@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.42s;animation-timing-function:var(--ease)}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation-duration:.01ms}}
:root{
  --bg:#0b0b0c; --bg-2:#141416; --bg-3:#08080a;
  --ink:#e9e9e7; --muted:#a2a2a4;
  --hairline:rgba(233,232,230,.13); --hairline-2:rgba(233,232,230,.06);
  --pearl-1:#e8e8e6; --pearl-gold:#c4c3c1; --pearl-peach:#c9c7c4;
  --sage:#8a9a82; --vermilion:#b5654d; --ochre:#c69a55; --pebble:#d7d3cc; --deepblue:#2b3a52;
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-spring:cubic-bezier(.2,.9,.2,1);
  --maxw:760px;
  --serif:"Fraunces","Noto Serif KR",serif;
  --body:"SUIT Variable",-apple-system,sans-serif;
  --mono:"Spline Sans Mono",ui-monospace,monospace;
  /* 결과 화면 타입 스케일 — 역할 6종 외 크기 금지(정본=vault 디자인 토큰, 게이트=check_result_scale) */
  --fs-hero:clamp(38px,10.6vw,44px);
  --fs-section:clamp(25px,6.6vw,29px);
  --fs-head:clamp(20px,5.4vw,22px);
  --fs-body:17px;
  --fs-support:14px;
  --fs-kicker:12px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:clip;overflow-y:visible}
main a{text-decoration:none}
body{background:var(--bg);color:var(--ink);font-family:var(--body);line-height:1.75;word-break:keep-all;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
.spine{display:none}
/* 옻칠 표면 — index와 동일한 한 장의 칠기 면 (sheen 라디얼 + grain + vignette) */
.room-ground{
  position:fixed;inset:0;z-index:-2;pointer-events:none;
  background-color:var(--bg);
  background-image:
    radial-gradient(120% 60% at 50% -12%, rgba(233,232,230,.05), transparent 58%),
    radial-gradient(140% 70% at 82% -8%, rgba(196,195,192,.055), transparent 54%),
    radial-gradient(120% 80% at 6% 106%, rgba(201,199,196,.04), transparent 60%);
}
.room-ground::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23g)'/></svg>");
  background-size:170px 170px;opacity:.055;mix-blend-mode:overlay;
}
.room-vignette{
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(130% 105% at 50% 26%, transparent 42%, rgba(0,0,0,.62) 100%);
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(24px,6.4vw,56px)}
/* 헤더 — 56px 한 줄, **비고정**(codex 설계서 §6-3). 108px 고정 헤더 + 74px 주문 바가
   모바일 한 화면의 21.6%를 가리고 있었고, 그동안 모든 문장이 판촉의 전주로 읽혔다. */
header{border-bottom:1px solid var(--hairline-2);padding:0;background:rgba(11,11,12,.8);backdrop-filter:blur(6px)}
header .wrap{display:flex;justify-content:space-between;align-items:center;min-height:56px;gap:0 14px}
.brand{font-family:var(--serif);font-size:1.02rem;letter-spacing:.05em;text-decoration:none;color:var(--ink)}
/* nav.css 는 좁은 폭에서 nav 를 둘째 줄로 내린다(=헤더 두 줄). 결과 화면은 한 줄이 규격이다. */
@media(max-width:560px){
  header .wrap{flex-wrap:nowrap;gap:0 12px}
  .cwnav{width:auto;justify-content:flex-end;margin-top:0;gap:13px}
}
section{padding:clamp(44px,7vw,80px) 0;border-bottom:1px solid var(--hairline-2)}
.eyebrow{font-family:"SUIT Variable",sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.14em;line-height:1.35;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:1.1rem}
h1{font-family:var(--serif);font-weight:500;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.24;letter-spacing:-.014em;text-wrap:balance;margin-bottom:.7rem}
h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.4rem,3vw,1.9rem);line-height:1.3;letter-spacing:-.012em;text-wrap:balance;margin-bottom:.6rem}
.sub{color:var(--muted);max-width:50ch}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
form{margin-top:28px;display:grid;gap:18px}
.field label,.field .field-label{display:block;font-family:"SUIT Variable",sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.09em;line-height:1.4;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}
input[type=date],input[type=time],input[type=text],input[type=email],input[type=tel],select{
  width:100%;padding:13px 14px;border:1px solid var(--hairline);background:var(--bg-2);
  font-family:var(--body);font-size:16px;color:var(--ink);border-radius:6px;appearance:none;
  color-scheme:dark;
  transition:border-color .18s var(--ease),box-shadow .18s var(--ease),background-color .18s var(--ease)}
input:focus,select:focus{outline:1px solid var(--pearl-gold);outline-offset:0;border-color:var(--pearl-gold)}
input[type=date]:not(:disabled):not(:focus):hover,input[type=time]:not(:disabled):not(:focus):hover,input[type=text]:not(:disabled):not(:focus):hover,input[type=email]:not(:disabled):not(:focus):hover,input[type=tel]:not(:disabled):not(:focus):hover,select:not(:disabled):not(:focus):hover{border-color:rgba(233,232,230,.24)}
input[type=date]:focus-visible,input[type=time]:focus-visible,input[type=text]:focus-visible,input[type=email]:focus-visible,input[type=tel]:focus-visible,select:focus-visible{outline:2px solid var(--pearl-gold);outline-offset:2px;box-shadow:0 0 0 3px rgba(196,195,192,.12)}
/* 네이티브 컨트롤을 옻칠·펄골드 톤으로 — 캘린더 아이콘은 펄골드로 톤 다운, select는 커스텀 셰브론 */
input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{
  filter:invert(85%) sepia(14%) saturate(420%) hue-rotate(357deg) brightness(94%) contrast(88%);
  opacity:.75;cursor:pointer}
select{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1.5l5 5 5-5' fill='none' stroke='%23aaa2a8' stroke-width='1.5'/></svg>");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}
/* 남/여 — 위 입력칸과 같은 폭·같은 높이의 두 칸. 이전엔 fit-content 라 작은 상자 하나로 떠 있었고,
   고른 쪽이 바탕만 살짝 밝아져 화면에서 안 읽혔다(2026-08-11 도마 지적). */
.radio-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
.radio-row label{padding:13px 14px;font-family:var(--body);font-size:16px;font-weight:400;letter-spacing:0;
  text-transform:none;cursor:pointer;margin:0;color:var(--muted);min-height:48px;
  display:flex;align-items:center;justify-content:center;border:1px solid var(--hairline);border-radius:6px;background:var(--bg-2);
  transition:border-color .18s var(--ease),background-color .18s var(--ease),color .18s var(--ease),transform .12s var(--ease)}
.radio-row label:hover{border-color:rgba(233,232,230,.24)}
.radio-row label:active{transform:scale(.985)}
.radio-row input{position:absolute;width:1px;height:1px;opacity:0;margin:0;pointer-events:none}
.radio-row input:checked+span{color:var(--ink);font-weight:600}
.radio-row label:has(input:checked){border-color:var(--pearl-gold);background:rgba(196,195,192,.1);box-shadow:inset 0 0 0 1px var(--pearl-gold)}
.radio-row label:has(input:focus-visible){outline:2px solid var(--pearl-gold);outline-offset:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:1rem 2.1rem;border-radius:6px;
  font-family:var(--body);font-size:1rem;letter-spacing:0;cursor:pointer;text-decoration:none;
  transition:transform .34s var(--ease-spring),border-color .18s var(--ease),color .18s var(--ease),box-shadow .24s var(--ease)}
.btn-primary{background:linear-gradient(180deg, rgba(196,195,192,.36), rgba(196,195,192,.14));color:#f0efed;
  border:1px solid #d6d4d0;font-weight:600;
  box-shadow:inset 0 1px 0 rgba(234,233,231,.3), inset 0 0 20px rgba(196,195,192,.22), 0 1px 14px rgba(0,0,0,.4), 0 0 22px rgba(196,195,192,.12)}
.btn-primary:hover{transform:translateY(-2px) scale(1.004);border-color:#dedcd8;box-shadow:inset 0 1px 0 rgba(234,233,231,.34),0 7px 20px rgba(0,0,0,.48),0 0 20px rgba(196,195,192,.12)}
.btn-primary:disabled{opacity:.35;cursor:default;transform:none}
.btn-line{background:transparent;color:var(--ink);border:1px solid var(--hairline)}
.btn-line:hover{border-color:var(--pearl-gold);color:var(--pearl-gold);transform:translateY(-1px);background:rgba(196,195,192,.045)}
.btn:not(:disabled):active{transform:translateY(0) scale(.985);transition-duration:.09s}
.btn:focus-visible,button:focus-visible{outline:2px solid var(--pearl-gold);outline-offset:2px}
a:focus-visible{outline:2px solid var(--pearl-gold);outline-offset:3px;border-radius:2px}
.hint{font-size:.84rem;color:var(--muted);margin-top:.5rem}
.hidden{display:none!important}
#loading{position:relative;padding:0;min-height:calc(100dvh - 56px);border-bottom:0;overflow:hidden}
#loading .cal{position:relative;width:calc(100% - 48px);max-width:1080px;min-height:calc(100dvh - 56px);margin:0 auto}
.cal-art{position:absolute;inset:0;z-index:0;pointer-events:none}
#cal-canvas{position:absolute;top:0;bottom:0;left:calc((100% - 100vw)/2);width:100vw;height:100%}
.cal-status{position:absolute;z-index:1;top:clamp(30px,5.8vh,58px);left:0;margin:0;white-space:normal;
  font-family:var(--body);font-size:clamp(31px,4vw,52px);font-weight:500;line-height:1.32;letter-spacing:-.045em;color:var(--ink)}
#loading-story{display:block;white-space:pre-line}
#loading.story-playing #loading-story{animation:cwLoadingStory 8s ease-in-out infinite;animation-play-state:running}
#loading.story-paused #loading-story{animation-play-state:paused}
.loading-message,.loading-static{display:none;white-space:pre-line}
#loading-msg.is-message #loading-story,#loading-msg.is-message .loading-static{display:none}
#loading-msg.is-message .loading-message{display:block}
@keyframes cwLoadingStory{0%,100%{opacity:0}12.5%,87.5%{opacity:1}}
.cal-bottom{position:absolute;z-index:1;left:0;right:0;bottom:clamp(22px,4vh,34px)}
/* 결과 공개 연출 — '계산이 끝나 운의 색이 도착했다'를 순서로 전한다(장식 아님, 정보 전달).
   색이 먼저 피어나고 이름·뜻이 딸려온 뒤, 읽기 블록이 한 박자 늦게 조용히 온다. */
@keyframes cwBloom{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@keyframes cwRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
#step-result.revealing #cr-figure{animation:cwBloom .64s var(--ease) both}
/* 히어로 텍스트는 **유닛 하나**로 함께 온다(S3 §5) — 조각별 딜레이 4개를 한 딜레이로.
   구간은 단일 규칙 동시 등장. below-fold 에 증가 딜레이를 걸면 빨리 내린 손님이 빈 구간을 본다. */
#step-result.revealing .cr-label,#step-result.revealing .cr-name,#step-result.revealing .cr-lead,#step-result.revealing .cr-trad{animation:cwRise .48s var(--ease) .24s both}
#step-result.revealing .rsec,#step-result.revealing .rd-closing{animation:cwRise .5s var(--ease) .64s both}
/* 성별 입력 뒤 새로 도착한 10년 구간만 1회 등장 — revealing 은 재계산 진입 시 제거된다(S4 §2) */
#step-result .pd-enter{animation:cwRise .5s var(--ease) both}
.loading-recovery{width:100%;max-width:420px;margin:0 auto}
.loading-recovery p{max-width:none!important;margin:0!important;color:var(--ink)!important}
.loading-recovery-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.loading-recovery .btn{min-height:44px;padding:.7rem 1rem;font-size:.88rem}
.order-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:560px}
.order-grid .full{grid-column:1/-1}
/* 주소 찾기 — 우편번호 옆 라인 버튼 + 펄 표면 임베드 레이어 */
.postcode-row{display:flex;gap:10px}
.postcode-row input{flex:1;min-width:0}
.postcode-row .btn-line{padding:0 16px;white-space:nowrap;font-size:.86rem}
.postcode-close{display:block;margin:0 0 8px auto;min-height:44px;padding:0 14px;background:none;border:1px solid var(--hairline);border-radius:6px;color:var(--muted);font-size:.82rem;cursor:pointer}
.postcode-close:hover{color:var(--ink);border-color:var(--hairline-2)}
#postcode-layer{background:var(--pearl-1);border-radius:9px;padding:10px;height:460px;overflow:hidden;
  box-shadow:0 10px 36px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.4)}
/* Toss 위젯은 라이트 UI — 자개빛 표면 위에 얹는다 */
#payment-surface{background:var(--pearl-1);border-radius:9px;padding:10px 14px 16px;margin-top:24px;
  box-shadow:0 10px 36px rgba(0,0,0,.5)}
.price-line{display:flex;justify-content:space-between;max-width:560px;padding:15px 0;border-top:1px solid var(--pearl-gold);border-bottom:1px solid var(--hairline);margin-top:28px;font-family:"SUIT Variable",sans-serif;font-weight:600;font-size:1.05rem;color:var(--pearl-1)}
.note-ok{font-size:.84rem;color:var(--sage);margin-top:.5rem}
.note-err{font-size:.84rem;color:var(--vermilion);margin-top:.5rem}
.hint.is-read{color:var(--sage)}
/* 입력 폼의 한 줄 안내·되읽기 — 본문 세리프를 물려받으면 문단처럼 커 보인다. 폼 부속으로 묶는다. */
#saju-form .hint{font-family:"SUIT Variable",sans-serif;font-size:.82rem;line-height:1.5;margin-top:.45rem;min-height:1.25em}
#saju-form .hint.is-read{font-weight:600}
#saju-form .hint:empty{margin-top:0;min-height:0}
.birth-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px}
.time-row{grid-template-columns:1.4fr 1fr}
select:disabled{opacity:.45}
.hint.is-err{color:var(--vermilion)}
/* 결제 결정 지점 안심 고지 */
.assure{margin-top:18px;border-top:1px solid var(--hairline-2);padding-top:16px;display:grid;gap:.5rem}
.assure .row{font-size:.82rem;color:var(--muted)}
.assure .legal{font-size:.76rem;color:rgba(162,162,164,.8);line-height:1.55}
footer{padding:44px 0 64px;text-align:center}
.foot-line{font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;color:var(--muted)}
.foot-legal-links{margin-top:1rem;font-size:.78rem;letter-spacing:.03em}
.foot-legal-links a{color:var(--muted);text-decoration:none;margin:0 .65rem;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.foot-legal-links a:hover{color:var(--ink)}
.foot-biz{border-top:1px solid var(--hairline-2);max-width:var(--maxw);margin:1.4rem auto 0;
  padding:1.3rem clamp(24px,6.4vw,56px) 0;
  font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;color:rgba(186,178,184,.88);
  word-break:keep-all;line-height:2.1}
.foot-biz .cp{color:var(--ink)}
/* 선물 초대 배너 — 입력 화면에만. 받은 사람이 자기 생년월일을 직접 넣는다. */
.gift-banner{border:1px solid var(--hairline);border-radius:9px;
  background:linear-gradient(180deg,var(--bg-2),var(--bg-3));padding:18px 20px;margin-bottom:30px}
.gift-banner .g-from{font-family:var(--serif);font-size:1.15rem;color:var(--pearl-1);margin-bottom:.4rem}
.gift-banner .g-msg{font-size:.92rem;color:var(--ink);margin-bottom:.5rem}
.gift-banner .g-guide{font-size:.84rem;color:var(--muted)}
#share-canvas{display:none}
@media(max-width:560px){.order-grid{grid-template-columns:1fr}
  #saju-form .btn-primary,#to-order,#order-submit,#pay-btn{width:100%}}

/* ══════════════════════════════════════════════════════════════════════════
   결과 화면 — 2026-08-11 재개편(codex 설계서 §4·§6). 결론 카드형 단일 스크롤.
   구간은 다섯뿐이다: 운의 색 → 나를 읽는 말 → 현재 10년 구간 → 근거 → 팔찌.
   ⚠️옛 결과 CSS(장 번호·도트·저울·문양·미니카드·오퍼 칩·고정 주문 바)는 덧대지 않고
     통째로 걷어냈다(§9-3). 여기 없는 부품은 화면에도 없다.
   ══════════════════════════════════════════════════════════════════════════ */

/* 입력 화면 — 선택 영역은 접어 둔다. 필드마다 붙던 긴 도움말은 걷었다(§4-1). */
.opt-fold{border-top:1px solid var(--hairline-2);border-bottom:1px solid var(--hairline-2);margin:0}
.opt-sum{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;
  min-height:52px;font-family:var(--body);font-size:.9rem;color:var(--muted);
  transition:color .18s var(--ease)}
.opt-sum::-webkit-details-marker{display:none}
.opt-sum:hover{color:var(--pearl-1)}
.opt-sum:focus-visible{outline:2px solid var(--pearl-gold);outline-offset:3px;border-radius:3px}
.opt-chev{font-size:1.05rem;line-height:1;color:var(--muted);transition:transform .3s var(--ease)}
.opt-fold[open] .opt-chev{transform:rotate(90deg)}
.opt-body{display:grid;gap:20px;padding:4px 0 22px}
.opt-note{font-size:.84rem;line-height:1.55;color:var(--muted)}

/* RESULT-SCALE */
/* ══ 결과 화면 스케일 CSS — 이 마커 블록 안 font-size 는 var(--fs-*) 만 허용(check_result_scale).
   위계 3단(구간 세리프 제목 > 블록 세리프 소제목 > 본문) + 보조 1종 + 킥커 1종.
   간격은 8/14/20/40/80 다섯 단만 쓴다(S3-system.md §2 — 합성 값 금지). ══ */
/* ── 구간 1 · 운의 색 ───────────────────────────────────────────────────── */
#step-result{padding-top:clamp(30px,5vw,44px);border-bottom:0}
#step-result>.wrap{max-width:1120px}
.legacy-report-note{display:flex;align-items:center;justify-content:space-between;gap:20px;
  margin:0 0 20px;padding:14px 0;border-bottom:1px solid var(--hairline-2)}
.legacy-report-note p{margin:0;font-size:var(--fs-support);line-height:1.6;color:var(--muted)}
.legacy-report-note .btn{min-height:44px;padding:.65rem 1rem;white-space:nowrap}
.result-cover{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(32px,5vw,64px);align-items:center}
.result-cover-copy{min-width:0}
.cr-photo{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:1/1;background:var(--bg-2);width:280px}
.cr-photo img{width:100%;height:100%;object-fit:cover;display:block}
/* §6-4 는 그라데이션을 「원석 사진 위 텍스트 대비용 한 곳」만 허용한다. 이 화면은 사진 위에
   글자를 얹지 않으므로 그 한 곳도 쓰지 않는다 — 오닉스처럼 어두운 돌은 덧칠이 색을 더 죽인다. */
.cr-label{font-family:"SUIT Variable",sans-serif;font-size:var(--fs-kicker);font-weight:600;
  letter-spacing:0;line-height:1.35;color:var(--pearl-gold);margin:0 0 8px}
.result-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0 0 20px;color:var(--muted);font-size:var(--fs-support);line-height:1.6}
.result-meta span:empty{display:none}
.result-headline{font-family:var(--serif);font-weight:500;font-size:var(--fs-section);line-height:1.32;
  letter-spacing:-.012em;color:var(--pearl-1);margin:0;overflow-wrap:break-word}
@media(min-width:761px){.result-headline{font-size:var(--fs-hero);line-height:1.34}}
.result-summary{max-width:720px;margin-top:14px;color:var(--ink);font-size:var(--fs-body);line-height:1.78}
.result-summary p+p{margin-top:8px}
.result-signature{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:20px;
  padding:14px 0;border-top:1px solid var(--hairline-2);border-bottom:1px solid var(--hairline-2)}
.result-signature-day{min-width:0}
.cr-name{font-family:var(--serif);font-weight:500;font-size:var(--fs-hero);line-height:1.25;
  letter-spacing:-.016em;color:var(--pearl-1);margin:0}
.result-cover:has(.result-headline:not([hidden])) .cr-name{font-size:var(--fs-section)}
.cr-lead{font-size:var(--fs-body);line-height:1.74;color:var(--ink);margin:14px 0 0}
.cr-trad{font-size:var(--fs-body);line-height:1.74;color:var(--muted);margin:14px 0 0}
.cr-color{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.cr-color-k{font-size:var(--fs-support);color:var(--muted)}
.cr-color-v{font-family:var(--serif);font-size:var(--fs-head);font-weight:500;line-height:1.42;
  letter-spacing:-.01em;color:var(--pearl-1);text-align:right}
.rnav{position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:clamp(16px,5vw,28px);
  margin:40px calc(-1 * clamp(24px,6.4vw,56px)) 0;padding:0 clamp(24px,6.4vw,56px);
  background:rgba(11,11,12,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--hairline-2)}
.rnav a{position:relative;display:flex;flex:1;align-items:center;justify-content:center;min-width:44px;min-height:48px;font-size:var(--fs-support);
  color:var(--muted);white-space:nowrap;transition:color .18s var(--ease)}
.rnav a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--pearl-1);
  transform:scaleX(0);transform-origin:left;transition:transform .18s var(--ease)}
.rnav a[aria-current="location"]{color:var(--pearl-1)}
.rnav a[aria-current="location"]::after{transform:scaleX(1)}
#sec-map,#sec-read,#sec-period,#sec-color,#sec-product,#sec-basis{scroll-margin-top:56px}
/* (구 .cr-acts·#share-hint 는 2026-08-12 버튼 삭제로 죽은 규칙이 되어 걷어냈다 — 08-14) */

/* ── 공통 구간 골격 ─────────────────────────────────────────────────────── */
/* 구간 사이 여백은 **합쳐서** 80px 이다(§6-3 72~88px). 괘선이 그 한가운데 앉게 위아래로 나눈다.
   ⚠️margin 과 padding 을 각각 80 으로 두면 실제 간격이 160px 이 되어 구간마다 한 화면의 19%를 먹는다. */
.rsec{padding:40px 0 0;border-bottom:0;border-top:1px solid var(--hairline-2);margin-top:40px}
/* 위계는 세 단뿐이다 — 구간 세리프 제목 > 블록 세리프 소제목 > 본문. 보조문은 14 한 종.
   골드 소라벨은 히어로 라벨과 블록 킥커 두 곳만.
   ⚠️구간 머리를 12px 골드 라벨로 세우지 마라 — 블록 라벨과 같은 급이 되어 구간 경계가
     사라진다(2026-08-14 도마 지적의 원인). */
.rsec-title{font-family:var(--serif);font-weight:500;font-size:var(--fs-section);line-height:1.25;
  letter-spacing:-.012em;color:var(--pearl-1);margin:0}
.rsec-lead{font-size:var(--fs-body);line-height:1.74;color:var(--muted);margin:14px 0 0}
.rsec-note{font-size:var(--fs-support);line-height:1.6;color:var(--muted);margin:14px 0 0}
#pd-next{font-size:var(--fs-body)}
.rp{font-size:var(--fs-body);line-height:1.74;color:var(--ink);margin:0}
.rp+.rp{margin-top:20px}
.rp-group+.rp{margin-top:14px}

.rm-weave{display:flex;height:18px;margin-top:40px;overflow:hidden;background:var(--bg-3)}
.rm-seg{min-width:2px;height:100%;background:var(--seat-color,var(--pearl-gold));opacity:var(--seat-opacity,.6);transform-origin:left center;transition:transform .56s var(--ease)}
.rm-rows{margin-top:20px;border-top:1px solid var(--hairline-2)}
.rm-row{display:grid;grid-template-columns:210px 72px minmax(0,1fr);gap:20px;align-items:start;padding:20px 0;border-bottom:1px solid var(--hairline-2)}
.rm-name{font-family:var(--serif);font-size:var(--fs-head);line-height:1.42;color:var(--pearl-1)}
.rm-share{font-size:var(--fs-support);line-height:2;color:var(--muted)}
.rm-text{font-size:var(--fs-body);line-height:1.74;color:var(--ink)}
.rm-stage.motion-ready .rm-seg{transform:scaleX(0)}
.rm-stage.motion-ready.is-visible .rm-seg{transform:scaleX(1)}

/* ── V4 근거 묶음 — 블록 = 머리 유닛 하나 + 본문 묶음 하나(S1 D1) ──────────
   머리 유닛 .rd-head = [킥커 → 세리프 소제목 → 근거 덱]. 유닛 내부 8px, 유닛→본문 20px.
   근거는 소제목 **바로 아래 덱** — 주장 직하 귀속(§12-2 의 "문장 위"는 08-14 도마 번잡
   판정으로 개정, 근거의 가시성 자체는 유지). */
.rd-head{margin:0 0 20px}
.rd-head>*{margin:0}
.rd-head>*+*{margin-top:8px}
/* 머리 유닛이 전부 숨으면(V1~V3 코어) 유닛 자체를 접는다 — 빈 20px 를 남기지 않는다 */
.rd-head:not(:has(> :not([hidden]))){display:none}
.rd-basis{font-size:var(--fs-body);line-height:1.6;color:var(--muted)}
.rd-headline{font-family:var(--serif);font-weight:500;font-size:var(--fs-head);line-height:1.42;
  letter-spacing:-.01em;color:var(--ink);text-wrap:balance}
/* 반대면은 별도 박스도 경고색도 쓰지 않는다 — 같은 크기·같은 문단 간격으로 잇는다. */
/* 닫기 — 개인 서술과 운의 색을 잇는 세 줄. 색 결정문이 이 구간의 얼굴이다(S1 D3). */
/* ⚠️닫기는 <section> 이라 전역 section{border-bottom} 을 받는다 — 리셋 없이는 바닥에
   두 번째 선이 그려져 근거 구간과의 사이에 죽은 띠가 뜬다(08-14 비평 R2, 픽셀 실측). */
.rd-closing{margin-top:40px;padding:40px 0 0;border-top:1px solid var(--hairline-2);border-bottom:0}
.rd-color-decision{font-family:var(--serif);font-weight:500;font-size:var(--fs-head);line-height:1.42;
  letter-spacing:-.01em;color:var(--ink);margin:20px 0 0;text-wrap:balance}
/* 승격 상한 — 120자를 넘는 결정문은 본문 문법으로(6줄 넘는 세리프는 제목 덩어리로 무너진다) */
.rd-color-decision.is-long{font-family:var(--body);font-weight:400;font-size:var(--fs-body);
  line-height:1.74;letter-spacing:0}
.rd-action{margin-top:14px;color:var(--muted)}

/* (구 .rp-wait 생성 중 자리표시는 2026-08-11 대기 구조 개정에서 지웠다 — 결과 화면은 확정본을
    한 번만 그리므로 결과 안에 '아직 오지 않은 문장' 자리가 존재하지 않는다. 판정서 §3.) */

/* ── 구간 2 · 나를 읽는 말 ──────────────────────────────────────────────── */
.rd-prose{margin-top:20px}
/* §4-3 — 카드로 감싸지 않는다. 블록 사이 40px — 유닛 내부(8)·유닛→본문(20)의 곱절이 되어야
   묶음이 눈에 갈라진다(간격의 비율이 묶음을 만든다).
   ⚠️코어↔축 경계에 헤어라인을 두지 마라 — 구간 내 블록↔블록은 전부 같은 40px 무선 문법이다.
     선이 끼면 '나를 읽는 말'이 제목 없는 두 토막으로 쪼개져 읽힌다(08-14 비평 결격). */
.rd-life{display:grid;grid-template-columns:1.15fr .85fr;gap:0 48px;margin-top:0;border-top:0}
.rd-life #rd-close{grid-column:1/-1}
.rd-block{padding:40px 0 0}
.rd-block+.rd-block{padding-top:40px}
.rd-h{font-family:"SUIT Variable",sans-serif;font-size:var(--fs-kicker);font-weight:600;
  letter-spacing:0;line-height:1.35;color:var(--pearl-gold)}
/* 블록 안의 결정적 근거 한 줄(§4-4). 보조문은 .rd-basis 와 같은 한 종만 쓴다. */
.rd-note{font-size:var(--fs-support);line-height:1.6;color:var(--muted)}
/* 확인할 장면 — 별도 큰 장을 만들지 않는다(§4-7). 「나를 읽는 말」 끝의 작은 한 문단이다.
   블록↔블록은 40px 무선 문법 — 여기만 선을 두면 제3의 경계 문법이 생긴다(08-14 비평 R2). */
.rd-reflect{margin-top:40px}

/* ── 구간 3 · 현재 10년 구간 ────────────────────────────────────────────── */
/* 연도 범위는 제목 아래 메타 줄이다 — 구간 제목보다 크게 세우면 숫자가 화면의 주인이 된다. */
.pd-range{font-family:"SUIT Variable",sans-serif;font-weight:600;font-size:var(--fs-support);
  line-height:1.5;letter-spacing:0;color:var(--pearl-1);margin:8px 0 20px;
  font-variant-numeric:tabular-nums}
.pd-track{display:grid;grid-template-columns:repeat(9,minmax(86px,1fr));list-style:none;margin-top:0;position:relative}
.pd-track::before{content:"";position:absolute;left:14px;right:calc((100% / 9) - 14px);top:31px;height:1px;background:var(--hairline);z-index:0}
.pd-cell{display:grid;grid-template-columns:66px 1fr auto;gap:12px;align-items:baseline;
  padding:14px 10px;border-bottom:1px solid var(--hairline-2);font-size:var(--fs-support);color:var(--muted)}
.pd-track .pd-cell{display:flex;position:relative;z-index:1;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 10px;border-bottom:0;background:transparent}
.pd-track .pd-cell::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--muted);margin:14px 0 8px}
.pd-track .pd-cell.on::before{width:9px;height:9px;background:var(--result-color,var(--pearl-gold));transition:transform .36s var(--ease)}
.pd-track.motion-ready .pd-cell.on::before{transform:scale(.92)}
.pd-track.motion-ready.is-visible .pd-cell.on::before{transform:scale(1)}
.pd-cell:last-child{border-bottom:0}
/* 지금 칸은 배경 한 단계로만 — 상태 점·화살표·예측 문장 0(§4-4). */
.pd-cell.on{background:rgba(233,232,230,.05);color:var(--ink)}
.pd-cell .pd-age{font-variant-numeric:tabular-nums}
.pd-cell .pd-year{font-variant-numeric:tabular-nums}
.pd-cell .pd-gan{font-family:var(--serif);color:var(--pearl-1);opacity:.86}
/* 성별 미입력 — 빈 장을 만들지 않는다. 한 줄과 행동 하나만 둔다.
   보조 안내는 support 급 — 본문 크기로 두면 소속 없는 고아 문단으로 뜬다(08-14 비평). */
.pd-ask{margin-top:40px;font-size:var(--fs-support);line-height:1.6;color:var(--muted)}
.linkbtn{background:none;border:0;padding:0;margin-left:.35em;font-family:var(--body);
  font-size:var(--fs-support);color:var(--pearl-gold);cursor:pointer;
  border-bottom:1px solid rgba(196,195,192,.5);min-height:44px;line-height:1.6}
.linkbtn:hover{color:var(--pearl-1)}
.pd-gsel{margin-top:14px}

.rc-stage{--result-color:#c4c3c1;display:grid;grid-template-columns:minmax(160px,200px) minmax(0,680px);gap:clamp(40px,6vw,64px);justify-content:space-between;align-items:start;position:relative;margin-left:calc(-1 * clamp(24px,6.4vw,56px));margin-right:calc(-1 * clamp(24px,6.4vw,56px));padding:clamp(40px,6vw,64px) clamp(24px,6.4vw,56px);background:color-mix(in srgb,var(--result-color) 10%,var(--bg));border-top:1px solid color-mix(in srgb,var(--result-color) 36%,var(--hairline-2));border-bottom:1px solid var(--hairline-2)}
.rc-intro{position:sticky;top:80px;min-width:0}
.rc-title{font-family:var(--serif);font-size:var(--fs-section);font-weight:500;line-height:1.4;letter-spacing:0;color:var(--pearl-1);overflow-wrap:break-word}
.rc-content{min-width:0}
.life-root{max-width:none;margin:0}
.life-section{display:grid;grid-template-columns:minmax(160px,200px) minmax(0,680px);column-gap:clamp(40px,6vw,64px);justify-content:space-between;
  padding-top:clamp(40px,6vw,64px);scroll-margin-top:56px}
.life-section>.rsec-title{position:sticky;top:68px;align-self:start;min-width:0}
.life-section-body{min-width:0}
.life-insight+.life-insight{margin-top:40px}
.life-question-title{font-family:var(--body);font-size:var(--fs-head);font-weight:650;line-height:1.42;
  letter-spacing:-.01em;color:var(--pearl-1);word-break:keep-all;overflow-wrap:break-word}
.life-insight-body{margin-top:14px}
.life-answer{margin:0;color:var(--ink);font-size:var(--fs-body);line-height:1.86;word-break:keep-all;overflow-wrap:break-word}
.life-answer+.life-answer{margin-top:14px}
.life-evidence{margin-top:32px;border-top:1px solid var(--hairline-2)}
.life-evidence-title{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;margin:0;font-size:var(--fs-support);font-weight:600;color:var(--pearl-gold);cursor:pointer;list-style:none}
.life-evidence-title::-webkit-details-marker{display:none}
.life-evidence-title::after{content:"+";font-size:var(--fs-head);font-weight:400;line-height:1}
.life-evidence[open]>.life-evidence-title::after{content:"−"}
.life-evidence-title:hover{color:var(--ink)}
.life-evidence-title:focus-visible{outline:1px solid var(--pearl-gold);outline-offset:4px}
.life-evidence-row{display:grid;grid-template-columns:minmax(120px,.48fr) minmax(0,1fr);gap:16px;
  padding:10px 0;border-top:1px solid var(--hairline-2);font-size:var(--fs-support);line-height:1.65;color:var(--muted)}
.life-evidence-row:first-of-type{border-top:0}
.life-evidence-topics{color:var(--ink);font-weight:600}
.life-period{margin-top:30px}
.life-color{margin-top:0}
.rc-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-top:32px}
.rc-element{font-family:var(--serif);font-size:var(--fs-hero);font-weight:500;line-height:1.08;color:var(--pearl-1)}
.rc-stone{font-family:var(--body);font-size:var(--fs-body);color:var(--pearl-1)}
.rc-trad{max-width:680px;font-size:var(--fs-body);line-height:1.74;color:var(--muted);margin-top:20px}
.rc-prose{max-width:680px;margin:0}
.rc-stage.motion-ready{opacity:0;transform:translateY(10px);transition:opacity .48s var(--ease),transform .48s var(--ease)}
.rc-stage.motion-ready.is-visible{opacity:1;transform:none}

.generation-state{margin-top:40px;padding:20px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline-2)}
.generation-state h2{font-family:var(--body);font-size:var(--fs-head);font-weight:650;color:var(--pearl-1);margin:0}
.generation-state p{max-width:680px;margin:8px 0 0;color:var(--muted);font-size:var(--fs-body);line-height:1.7}
.generation-state-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}

.chart-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px 48px;margin-top:30px}
.chart-block{min-width:0}
.chart-block-wide{grid-column:1/-1}
.chart-title{font-family:var(--body);font-size:var(--fs-support);font-weight:650;color:var(--pearl-gold);margin:0 0 12px}
.chart-note{margin:10px 0 0;color:var(--muted);font-size:var(--fs-support);line-height:1.6}
.chart-pillars{width:100%;border-collapse:collapse;table-layout:fixed}
.chart-pillars th{padding:0 8px 8px;color:var(--muted);font-size:var(--fs-kicker);font-weight:600;text-align:center}
.chart-pillars td{padding:12px 8px;border-top:1px solid var(--hairline-2);font-family:var(--serif);font-size:var(--fs-head);text-align:center;color:var(--pearl-1)}
.chart-pillars td.me{color:var(--pearl-gold)}
.chart-pillars .ha{display:block;margin-top:2px;font-size:var(--fs-support);color:var(--muted)}
.element-bars{display:grid;gap:10px}
.element-bar{display:grid;grid-template-columns:28px minmax(0,1fr) 44px;gap:10px;align-items:center;
  color:var(--muted);font-size:var(--fs-support);font-variant-numeric:tabular-nums}
.element-bar-track{height:7px;background:var(--hairline-2);overflow:hidden;border-radius:99px}
.element-bar-fill{display:block;height:100%;background:var(--bar-color,var(--pearl-gold));border-radius:inherit}
.element-bar-value{text-align:right;color:var(--ink)}
.chart-explain{grid-column:1/-1;margin-top:0}
.chart-explain .fold-body{max-width:720px}

/* ── 접힘(전체 10년 구간 / 계산값 자세히 보기) ─────────────────────────── */
.fold{margin-top:20px;border-top:1px solid var(--hairline-2)}
/* 접힘 요약행 — 위 20 / 아래 4+구간여백 40 = 텍스트가 두 선 사이에 문법대로 앉는다(R5 비평).
   높이 44px 유지(탭 타깃). 라벨은 pearl-gold — 눌리는 행 3곳(접힘 2·더보기 1)을 한 종으로. */
.fold-sum{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:20px 0 4px;min-height:44px;font-family:var(--body);font-size:var(--fs-support);color:var(--pearl-gold);
  transition:color .18s var(--ease)}
.fold-sum::-webkit-details-marker{display:none}
.fold-sum:hover{color:var(--pearl-1)}
.fold-sum:focus-visible{outline:2px solid var(--pearl-gold);outline-offset:3px;border-radius:3px}
.fold-chev{font-size:1.05rem;line-height:1;color:var(--pearl-gold);transition:transform .3s var(--ease)}
.fold[open] .fold-chev{transform:rotate(90deg)}
.fold-body{padding:0 0 20px}
#pd-fold .fold-body{overflow-x:auto}

/* ── 구간 4 · 근거 ──────────────────────────────────────────────────────── */
/* 다섯 행짜리 연속 표. 둥근 카드·도트·그래프·캡션 0(§4-5). */
.bs-rows{margin-top:20px;border-top:1px solid var(--hairline-2)}
.bs-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;
  padding:14px 0;border-bottom:1px solid var(--hairline-2)}
/* 경계당 선 1개 — 마지막 행 밑선을 접힘 top 선과 겹치지 않게 끈다(08-14 비평 R2) */
.bs-rows .bs-row:last-child{border-bottom:0}
.bs-k{font-size:var(--fs-support);color:var(--muted);white-space:nowrap}
.bs-v{font-size:var(--fs-body);color:var(--ink);text-align:right}
/* 선택 결과 행은 네 변 안쪽의 배경 톤으로 강조한다. */
.bs-row.is-pick{background:rgba(196,195,192,.07);padding:14px 10px}
.bs-row.is-pick .bs-v{color:var(--pearl-1);font-weight:600}
/* 상세 — 팔자 네 기둥 + 가중 세력 + 다섯 자리 + 강약·온도 + 참고 개수.
   접힘 안 소제목은 muted — 골드는 히어로 라벨·블록 킥커 두 곳뿐이다(S1 D4). */
.bs-sub{font-family:"SUIT Variable",sans-serif;font-size:var(--fs-support);font-weight:600;
  letter-spacing:0;color:var(--muted);margin:20px 0 8px}
.bs-sub:first-child{margin-top:0}
.pj{width:100%;border-collapse:collapse;font-size:var(--fs-support)}
.pj th,.pj td{padding:10px 4px;border-bottom:1px solid var(--hairline-2);text-align:center}
.pj th{font-family:"SUIT Variable",sans-serif;font-size:var(--fs-kicker);font-weight:600;color:var(--muted)}
.pj td{color:var(--ink)}
.pj td .ha{display:block;font-family:var(--serif);font-size:var(--fs-kicker);color:var(--muted);margin-top:2px}
.pj td.me{color:var(--pearl-1);font-weight:600}
.bs-line{display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:10px 0;border-bottom:1px solid var(--hairline-2);font-size:var(--fs-support);color:var(--muted)}
.bs-line b{font-weight:400;color:var(--ink)}
.bs-line span{font-variant-numeric:tabular-nums;white-space:nowrap}
.bs-foot{font-size:var(--fs-body);line-height:1.6;color:var(--muted);margin-top:14px}

/* ── 구간 5 · 팔찌 ──────────────────────────────────────────────────────── */
/* 배경 3단계 가운데 셋째 — 상품 구간만 한 톤 낮춘다(§6-4). */
.rsec-product{background:var(--bg-3);margin-left:calc(-1 * clamp(24px,6.4vw,56px));
  margin-right:calc(-1 * clamp(24px,6.4vw,56px));padding:40px clamp(24px,6.4vw,56px) 40px}
.pr-bridge{font-size:var(--fs-body);line-height:1.74;color:var(--muted);margin:0 0 20px}
.pr-layout{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(300px,1fr);gap:clamp(32px,5vw,64px);align-items:start}
.pr-copy{min-width:0}
.pr-hero{width:100%;display:block;border-radius:12px;aspect-ratio:4/3;object-fit:cover;background:var(--bg-2)}
.pr-name{font-family:var(--serif);font-weight:500;font-size:var(--fs-section);line-height:1.25;
  color:var(--pearl-1);margin:20px 0 0}
.pr-price{font-family:"SUIT Variable",sans-serif;font-size:var(--fs-head);font-weight:600;color:var(--pearl-1);
  font-variant-numeric:tabular-nums;margin:8px 0 0}
#to-order{margin-top:20px;min-width:260px}
.pr-stone{display:flex;gap:14px;align-items:flex-start;margin-top:40px}
.pr-stone img{width:96px;height:96px;flex:none;object-fit:cover;border-radius:12px;background:var(--bg-2)}
.pr-note{font-size:var(--fs-body);line-height:1.6;color:var(--muted);margin:0}
.pr-spec{list-style:none;margin:40px 0 0;border-top:1px solid var(--hairline-2)}
.pr-spec li{padding:14px 0;border-bottom:1px solid var(--hairline-2);font-size:var(--fs-body);color:var(--ink)}
.pr-policy{font-size:var(--fs-body);line-height:1.6;color:var(--muted);margin:20px 0 0}
.pr-more{margin-top:8px}
.pr-more a{font-size:var(--fs-support);color:var(--pearl-gold);display:inline-flex;align-items:center;gap:.4em;min-height:44px}

.pr-more a:hover{color:var(--pearl-1)}
/* /RESULT-SCALE */

@media(max-width:560px){
  .legacy-report-note{align-items:flex-start;flex-direction:column;gap:8px}
  .rnav{gap:8px;padding-inline:12px;overflow-x:hidden;scrollbar-width:none}
  .rsec{padding-top:36px;margin-top:36px}
  .rsec-product{padding-top:36px;padding-bottom:36px}
  .rm-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}
  .rm-text{grid-column:1/-1}
  .rd-life{grid-template-columns:1fr;gap:0}
  .rd-life #rd-close{grid-column:auto}
  .pd-track{grid-template-columns:repeat(9,86px);width:max-content;min-width:100%;overflow:visible;padding-bottom:8px}
  .rc-heading{margin-top:20px}
  .pr-layout{grid-template-columns:1fr;gap:20px}
  #to-order{min-width:0}
}
@media(max-width:760px){
  .result-cover{grid-template-columns:1fr;gap:18px}
  .cr-photo{width:104px}
  .result-cover:has(.result-headline:not([hidden])){grid-template-columns:minmax(0,1fr) 104px;gap:0 20px}
  .result-cover:has(.result-headline:not([hidden])) .result-cover-copy{display:contents}
  .result-cover:has(.result-headline:not([hidden])) .result-cover-copy>p,.result-headline,.result-summary{grid-column:1/-1}
  .result-cover:has(.result-headline:not([hidden])) .cr-photo{grid-column:2;align-self:end;margin-bottom:14px}
  .result-summary{line-height:1.72}
  .result-signature{align-items:flex-start}
  .result-cover:has(.result-headline:not([hidden])) .result-signature{grid-column:1;flex-direction:column;gap:14px;border-bottom:0}
  .result-cover:has(.cr-photo[hidden]) .result-signature{grid-column:1/-1;flex-direction:row}
  .cr-color{display:block;text-align:right}
  .result-cover:has(.result-headline:not([hidden])) .cr-color{text-align:left}
  .cr-color-v{display:block;margin-top:2px}
  .life-section{grid-template-columns:1fr;column-gap:0;padding-top:40px}
  .life-section>.rsec-title{position:static;margin-bottom:32px}
  .rc-stage{grid-template-columns:1fr;gap:32px}
  .rc-intro{position:static}
  .life-evidence-row{grid-template-columns:1fr;gap:4px}
  .chart-grid{grid-template-columns:1fr;gap:32px}
  .chart-block-wide,.chart-explain{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){
  #step-result.revealing #cr-figure,#step-result.revealing .cr-label,#step-result.revealing .cr-name,#step-result.revealing .cr-lead,#step-result.revealing .cr-trad,#step-result.revealing .rsec,#step-result.revealing .rd-closing,#step-result .pd-enter{animation:none}
  #loading-story,#loading.story-playing #loading-story{display:none;animation:none}.loading-static{display:block}
  html{scroll-behavior:auto}
  .rm-stage.motion-ready .rm-seg,.rm-stage.motion-ready.is-visible .rm-seg{transform:none}
  .rc-stage.motion-ready,.rc-stage.motion-ready.is-visible{opacity:1;transform:none}
  .life-insight[open] .life-insight-body{animation:none}
  .btn,.fold-chev,.opt-chev,.fold-sum,.opt-sum,.rnav a,.rnav a::after,.life-question-mark::before,.life-question-mark::after,input[type=date],input[type=time],input[type=text],input[type=email],input[type=tel],select,.radio-row label{transition:none!important}
}
/* 숫자 규율 — 값을 눈으로 대조하는 자리는 폭이 고른 숫자로 */
.eyebrow,#o-price,.order-disclosure,input[type=date],input[type=time],input[type=tel],.foot-biz{font-variant-numeric:tabular-nums}
/* 한글 줄바꿈 안전망 */
h1,h2,h3,.cr-name,.rsec-title,.rd-headline,.pr-name,.rp,.cr-lead,.cr-trad,.pr-bridge,.pr-note{word-break:keep-all;overflow-wrap:break-word}
