/* ==== pair-characters.css ==== */
:root{--pair-bg:#fff7ed;--pair-ink:#4a352b;--pair-accent:#986025;--pair-line:#e8d9c6;--pair-muted:#796658}
.pair-character{box-sizing:border-box;max-width:720px;margin:20px auto 24px;padding:24px 16px;border:1px solid var(--pair-line);border-radius:24px;background:var(--pair-bg);color:var(--pair-ink);text-align:center}
.pair-eyebrow{font:500 12px/1.5 var(--body,sans-serif);color:var(--pair-accent);margin:0 0 8px}.pair-character h3{font:700 clamp(19px,4.8vw,26px)/1.5 var(--body,sans-serif)!important;color:var(--pair-ink)!important;margin:0 0 14px!important;word-break:keep-all}
.pair-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(64px,22%) minmax(0,1fr);align-items:center;gap:0}.pair-stage figure{min-width:0;margin:0}.pair-art{display:block;width:100%;aspect-ratio:1;height:auto;object-fit:contain}.pair-dog{background-image:url('img/characters-v1.webp');background-size:600% 600%;background-repeat:no-repeat}.pair-prop{color:var(--pair-accent);align-self:center;transform:translateY(-24px)}.pair-prop svg{display:block;width:100%;height:auto}.pair-stage figcaption b{display:block;font-size:15px;overflow-wrap:anywhere}.pair-stage figcaption span{display:block;margin-top:4px;font-size:12px;line-height:1.6;color:var(--pair-muted);word-break:keep-all}.pair-description{max-width:32em;margin:22px auto 12px;font-size:15px;line-height:1.85;word-break:keep-all}.pair-basis{font-size:12px;line-height:1.8;color:var(--pair-muted);max-width:34em;margin:auto}.pair-basis summary{cursor:pointer;min-height:44px;display:list-item;align-content:center}.pair-basis p{text-align:left}.pair-basis summary:focus-visible{outline:2px solid var(--pair-accent);outline-offset:3px}
@media(max-width:380px){.pair-character{padding:20px 10px}.pair-stage figcaption span{font-size:11px}.pair-description{font-size:14px}}html.rd .pair-character{--pair-bg:#302b28;--pair-ink:#fff0dc;--pair-accent:#edc36f;--pair-line:#665341;--pair-muted:#d1bda6}

.pair-prop{width:100%;max-width:132px;justify-self:center;filter:drop-shadow(0 3px 2px #6a4c3810)}.pair-prop svg{overflow:visible}@media(max-width:380px){.pair-stage{grid-template-columns:minmax(0,1fr) minmax(58px,22%) minmax(0,1fr)}}

/* ==== install-app.css ==== */
#brandbar .bar-actions{display:flex!important;align-items:center;gap:5px!important}#install-app{display:inline-flex!important;align-items:center;justify-content:center;gap:5px;width:auto!important;min-width:44px!important;min-height:44px;padding:6px 9px!important;font:500 12px/1.2 var(--body,system-ui);white-space:nowrap;color:var(--fg);border:1px solid var(--line);border-radius:12px;background:var(--surface,transparent)}#install-app svg{flex:none}#install-guide{width:min(560px,calc(100% - 24px));max-height:85dvh;overflow:auto;border:1px solid var(--line,#ded8cd);border-radius:22px;padding:24px;background:var(--surface,#fffaf2);color:var(--fg,#302e29);font:15px/1.8 var(--body,system-ui);box-sizing:border-box}#install-guide::backdrop{background:#15201b88}#install-guide header{display:flex;align-items:center;gap:12px}#install-guide header img{border-radius:14px;flex:none}#install-guide h2{font-size:19px;line-height:1.5;margin:0}#install-guide header p{font-size:12px;margin:4px 0;color:var(--muted,#706d65)}#install-close{flex:none;align-self:start;margin-left:auto;font-size:24px;border:0;background:none;color:inherit;min-width:40px;min-height:40px}#install-guide h3{font-size:16px}#install-guide details{border-top:1px solid var(--line,#ded8cd);padding:14px 0}#install-guide summary{cursor:pointer;font-weight:600;min-height:32px}#install-guide ol{padding-left:22px}#install-guide li{margin:10px 0}#install-context{padding:12px;border-radius:12px;background:var(--field,#f2ede3)}#install-external{border-left:3px solid #ad8c4c;padding-left:14px;margin:20px 0}.install-note{font-size:12px;color:var(--muted,#706d65)}.install-copy{display:flex;gap:8px}.install-copy input{min-width:0;flex:1;padding:10px;border:1px solid var(--line,#ded8cd);border-radius:10px;background:var(--field,#f2ede3);color:inherit;font-size:12px}.install-copy button,#install-native{border:1px solid var(--line,#ded8cd);padding:10px 14px;border-radius:10px;min-height:44px;background:var(--field,#f2ede3);color:inherit;cursor:pointer}#install-native{width:100%;font-weight:600;background:#d6eee8;color:#20463c;margin-bottom:15px}#install-guide [hidden]{display:none!important}#install-copy-status{font-size:12px}@media(max-width:380px){#install-app{padding-inline:6px!important;font-size:11px;gap:3px}#install-app svg{width:16px}#brandbar .brandbar-brand{gap:4px!important}#brandbar .brandbar-title{font-size:16px!important}#install-guide{padding:18px}#install-guide header img{width:44px;height:44px}#install-guide h2{font-size:17px}}@media print{#install-app,#install-guide{display:none!important}}

/* Compact install shortcut at the left edge of the header. */
#brandbar>#install-app{flex:none;width:34px!important;min-width:34px!important;height:34px;min-height:34px;padding:7px!important;gap:0!important;border:0;background:transparent;border-radius:10px}#install-app>span{display:none}#brandbar>#install-app svg{width:18px;height:18px}

/* ==== app.004405c6.css ==== */
/* Theme: 먼지 낀 황혼의 폐허 위로 흐르는 에메랄드 에너지. Layout: 입력(접힘) → 판정 → 10년 흐름 → 금전·애정·직업·건강 카드(카드마다 시점 선택, 풀이는 접기) → 접힌 패널. 신비주의 서고의 에메랄드 문양과 금빛 불씨. */
:root{
  --bg:#0b0907; --panel:rgba(18,14,11,.74); --field:rgba(10,8,6,.82); --line:rgba(110,230,160,.18); --line2:rgba(110,230,160,.36);
  --fg:#4A352B; --muted:#6E5A4C; --dim:#76695a;
  --emerald:#1F7A95; --teal:#2E8FAE; --gold:#C08A2E; --ember:#ff9a3c; --rose:#D2598A; --violet:#7A64C8;
  --money:#f2c45a; --love:#D2598A; --work:#52d6ff; --health:#48f0a6;
  --trait-dot:#b8f36d; --net-bg:#071321; --net-core:#123e57; --net-node:#4FA8C8;
  --display:"Nanum Myeongjo","Batang","AppleMyungjo",serif;
  --latin:"Cinzel","Nanum Myeongjo",serif;
  --body:"IBM Plex Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  color-scheme:dark;
}
html{background:var(--bg)}
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:15px;line-height:1.65;overflow-x:hidden}
#sky{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.wrap{position:relative;z-index:2;max-width:1040px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:28px 72px;display:flex;flex-direction:column;gap:52px}
.eyebrow{font-family:var(--latin);font-size:12px;letter-spacing:.32em;color:var(--emerald);text-transform:uppercase}
h1{font-family:var(--display);font-weight:800;font-size:clamp(34px,6vw,58px);line-height:1.12;margin:12px 0 14px;text-wrap:balance}
h1 em{font-style:normal;color:var(--emerald);text-shadow:0 0 18px rgba(61,255,176,.55),0 0 50px rgba(61,255,176,.25)}
h2{font-family:var(--display);font-size:clamp(23px,3.2vw,30px);margin:0;text-wrap:balance;font-weight:700}
.lede{color:var(--muted);max-width:60ch;margin:0}

/* hero */
.hero{position:relative;min-height:440px}
.wrap{overflow-x:clip}
.sigil{position:absolute;right:-140px;top:-40px;width:640px;aspect-ratio:1;opacity:.42;pointer-events:none;-webkit-mask-image:radial-gradient(circle,#000 55%,transparent 72%);mask-image:radial-gradient(circle,#000 55%,transparent 72%)}
.sigil svg{width:100%;height:100%}
@media all{.sigil{right:50%;transform:translateX(50%);width:540px;opacity:.2}}
.r1{animation:spin 160s linear infinite;transform-origin:250px 250px}
.r2{animation:spin 100s linear infinite reverse;transform-origin:250px 250px}
.r3{animation:spin 70s linear infinite;transform-origin:250px 250px}
.natalpts{opacity:0;animation:late 6s ease 4s forwards}
@keyframes late{to{opacity:.55}}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-in{position:relative;max-width:640px;display:flex;flex-direction:column}

details.askbox{margin-top:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel);backdrop-filter:blur(10px);transition:border-color .3s}
details.askbox[open]{border-color:var(--line2);box-shadow:0 0 30px rgba(61,255,176,.08)}
details.askbox>summary{list-style:none;cursor:pointer;padding:12px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.who-sum{display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:0}
.who-sum span{font-family:var(--mono);font-size:12px;color:var(--fg);border:1px solid var(--line);border-radius:999px;padding:3px 10px;background:var(--field)}
.who-sum span:first-child{color:var(--emerald);border-color:var(--line2)}
.edit{font-size:13px;color:var(--emerald);white-space:nowrap}
details.askbox[open] .who-sum{opacity:.5}
form.ask{border-top:1px solid var(--line);padding:16px;animation:open .45s ease;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 12px}
.f{display:flex;flex-direction:column;gap:4px;min-width:0}
.f.s2{grid-column:span 2}.f.s3{grid-column:span 3}
@media all{form.ask{grid-template-columns:repeat(2,minmax(0,1fr))}.f.s2,.f.s3{grid-column:span 1}.f.full,.f.wm{grid-column:1/-1}}
.f label,.f .lb{font-size:11.5px;color:var(--muted);letter-spacing:.04em}
.f input,.f select{font:inherit;font-size:14px;color:var(--fg);background:var(--field);border:1px solid var(--line);border-radius:9px;padding:8px 10px;min-width:0;width:100%;box-sizing:border-box}
.f input:focus,.f select:focus{outline:none;border-color:var(--emerald);box-shadow:0 0 0 3px rgba(61,255,176,.15)}
.seg{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--field)}
.seg label{position:relative;flex:1;text-align:center;padding:8px 4px;font-size:14px;color:var(--muted);cursor:pointer;letter-spacing:0}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg input:checked+span{color:var(--emerald)}
.seg label:has(input:checked){background:rgba(61,255,176,.10)}
.seg label:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:-2px}
.f.full{grid-column:1/-1}
.ymd{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:6px}
.ymd select,.ymd input{padding-inline:8px}
.ymd .unit{position:relative;display:block;min-width:0}.ymd .unit input{width:100%;padding-right:26px}.ymd .unit span{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--muted);pointer-events:none}
.ymd input[type=number]{-moz-appearance:textfield;appearance:textfield}.ymd input::-webkit-outer-spin-button,.ymd input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.sub{display:flex;gap:10px;align-items:center;flex-wrap:wrap;min-height:20px}
.conv{font-family:var(--mono);font-size:11.5px;color:var(--gold-ink)}
.opt{color:var(--dim);letter-spacing:0}
body.fresh .natalbox,body.fresh #forecast,body.fresh .reading,body.fresh .panels{display:none}
.natalbox{scroll-margin-top:16px}
#whoName.noname{cursor:pointer;text-decoration:underline dotted;text-decoration-thickness:2px;text-underline-offset:.18em;text-decoration-color:var(--emerald)}#whoName.noname:hover,#whoName.noname:focus-visible{color:var(--emerald);outline:none}
.fnote{font-size:11.5px;line-height:1.5;color:var(--dim);word-break:keep-all}.fnote b{font-family:var(--mono);font-weight:500;color:var(--gold-ink);letter-spacing:.04em}
.noplace{margin:0 0 8px}.noplace small{color:var(--dim)}
.psearch{position:relative;margin-bottom:6px}
.psearch input{font:inherit;font-size:14px;width:100%;color:var(--fg);background:var(--field);border:1px solid var(--line2);border-radius:9px;padding:9px 12px 9px 34px;background-image:radial-gradient(circle at 15px 50%,transparent 5px,var(--emerald) 5.5px,var(--emerald) 6.5px,transparent 7px);background-repeat:no-repeat}
.psearch input:focus{outline:none;border-color:var(--emerald);box-shadow:0 0 0 3px rgba(61,255,176,.15)}
.plist{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;background:#14100c;border:1px solid var(--line2);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.5);max-height:300px;overflow:auto}
.plist li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:8px 10px;border-radius:7px;cursor:pointer;font-size:14px}
.plist li small{font-size:11.5px;color:var(--muted);white-space:nowrap}
.plist li:hover,.plist li[aria-selected="true"]{background:rgba(61,255,176,.12)}
.psel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:6px;margin-bottom:6px}
.psel select{font:inherit;font-size:14px;color:var(--fg);background:var(--field);border:1px solid var(--line);border-radius:9px;padding:8px 10px;min-width:0}
.psel select:disabled{opacity:.5}
.placebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:9px;background:var(--field);padding:6px 6px 6px 12px}
.pin{width:9px;height:9px;border-radius:50%;background:var(--emerald);box-shadow:0 0 0 4px rgba(61,255,176,.15),0 0 10px var(--emerald);flex:none}
.pname{font-size:14px}
.coords{font-family:var(--mono);font-size:11.5px;color:var(--muted);flex:1;min-width:0}
.placebar button,.mapfoot .done,.maptabs button{font:inherit;font-size:13px;border-radius:8px;cursor:pointer}
.placebar button{background:rgba(61,255,176,.1);color:var(--emerald);border:1px solid var(--line2);padding:6px 12px}
.mapbox{margin-top:10px;border:1px solid var(--line2);border-radius:12px;background:rgba(255,253,250,.96);overflow:hidden;animation:open .4s ease}
.maptabs{display:flex;gap:6px;align-items:center;padding:10px;flex-wrap:wrap}
.maptabs button{background:transparent;color:var(--muted);border:1px solid var(--line);padding:5px 12px}
.maptabs button[aria-pressed="true"]{color:var(--emerald);border-color:var(--emerald)}
.maphint{font-size:12px;color:var(--dim);margin-left:auto}
.mapwrap{position:relative;padding:0 10px}
#map{display:block;width:100%;height:auto;max-height:440px;cursor:crosshair;touch-action:manipulation}
#map .rg{fill:rgba(110,230,160,.13);stroke:rgba(110,230,160,.5);stroke-width:.5;transition:fill .15s}
#map .rg:hover{fill:rgba(61,255,176,.22)}
#map .rg.on{fill:rgba(61,255,176,.38);stroke:#1F7A95}
#map .nb{fill:rgba(171,159,140,.07);stroke:rgba(171,159,140,.25);stroke-width:.5}
#map .sea{fill:transparent}
#map .grid{stroke:rgba(110,230,160,.08);stroke-width:.5}
#map .mk{fill:#1F7A95}#map .mkr{fill:none;stroke:#1F7A95;stroke-width:1.2;animation:ping 1.8s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes ping{from{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.2)}}
.maptip{position:absolute;pointer-events:none;font-size:12px;background:rgba(255,253,250,.96);border:1px solid var(--line2);border-radius:6px;padding:3px 8px;white-space:nowrap;transform:translate(-50%,-130%)}
.mapfoot{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px}
.quick{display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:0}
.quick button{font:inherit;font-size:12px;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 10px;cursor:pointer}
.quick button:hover{color:var(--fg);border-color:var(--line2)}
.tz{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:12px;color:var(--muted)}
.tz input{width:70px;font:inherit;color:var(--fg);background:var(--field);border:1px solid var(--line);border-radius:7px;padding:5px 6px}
.mapfoot .done{background:var(--emerald);color:#032016;border:0;padding:7px 16px;font-weight:600}
.chk{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-top:2px}
.chk input{width:auto;accent-color:#1F7A95}
.go{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.go button{font:inherit;font-weight:600;font-size:14.5px;color:#032016;background:var(--emerald);border:0;border-radius:10px;padding:10px 22px;cursor:pointer;box-shadow:0 0 22px rgba(61,255,176,.4);transition:transform .2s}
.go button:hover{transform:translateY(-1px)}
.askbox.casting{border-color:var(--emerald);animation:cast-glow 1.1s ease-in-out}
.askbox.casting form{position:relative;pointer-events:none}
.askbox.casting form>*:not(.go){opacity:.45;transition:opacity .4s}
.askbox.casting form::after{content:"";position:absolute;inset:0;border-radius:12px;background:linear-gradient(100deg,transparent 30%,color-mix(in srgb,var(--emerald) 22%,transparent) 50%,transparent 70%);background-size:250% 100%;animation:cast-sweep 1.1s ease-in-out}
.askbox.casting .go button{animation:cast-btn .55s ease-in-out 2}
@keyframes cast-glow{0%,100%{box-shadow:0 0 0 transparent}50%{box-shadow:0 0 42px color-mix(in srgb,var(--emerald) 35%,transparent)}}
@keyframes cast-sweep{from{background-position:120% 0}to{background-position:-120% 0}}
@keyframes cast-btn{0%,100%{transform:scale(1)}50%{transform:scale(1.05);box-shadow:0 0 38px var(--emerald)}}
.go small{font-size:12px;color:var(--dim)}
#err{color:var(--rose);font-size:13px}

.natalbox{margin-top:22px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--panel);backdrop-filter:blur(8px)}
.nat-h{margin:0 0 12px;font-family:var(--display);font-size:19px;color:var(--gold-ink)}
.verdict{display:flex;gap:18px;align-items:flex-start;margin-top:24px;flex-wrap:wrap}
.orb{width:92px;height:92px;flex:none;border-radius:50%;display:grid;place-items:center;position:relative;background:radial-gradient(circle,rgba(61,255,176,.25),rgba(3,12,20,.2) 65%);border:1px solid var(--line2);box-shadow:0 0 40px rgba(61,255,176,.25),inset 0 0 20px rgba(61,255,176,.15)}
.orb::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:1px dashed rgba(233,196,106,.55);animation:spin 24s linear infinite}
.orb b{font-family:var(--latin);font-size:32px;color:var(--gold-ink);line-height:1}
.orb small{position:absolute;bottom:13px;font-size:10px;color:var(--muted)}
.verdict>p{margin:0;max-width:60ch;font-size:14.5px;color:#cfe3dd;flex:1;min-width:240px}
.verdict .type{display:block;font-family:var(--display);font-size:clamp(19px,2.6vw,23px);line-height:1.45;margin-bottom:8px;text-wrap:balance}
.verdict .type em{font-style:normal;color:var(--gold-ink);text-shadow:0 0 16px rgba(233,196,106,.35)}
.gifts{margin:0 0 10px;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.gifts li{position:relative;padding-left:18px;font-size:14px;color:#d8cfc1}
.gifts li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;transform:rotate(45deg);background:var(--emerald);box-shadow:0 0 8px var(--emerald)}
.gifts b,.vline b{color:var(--fg)}
.vline{margin:0 0 6px;font-size:14px;color:#cfe3dd}
.rare{margin:0;font-size:12px;color:var(--dim)}

/* forecast */
.sec-head{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.trend{border:1px solid var(--line);border-radius:16px;padding:18px 16px 12px;background:var(--panel);backdrop-filter:blur(8px)}
.trend svg{display:block;width:100%;height:auto}
.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted);padding:4px 8px 0}
.legend i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}
.cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;position:relative;margin-top:16px}
@media all{.cats{grid-template-columns:1fr}}
.flash{position:absolute;left:50%;top:40%;width:min(520px,90%);aspect-ratio:1;pointer-events:none;opacity:0;z-index:3;transform:translate(-50%,-50%)}
.flash.cast{animation:cast 1.1s ease-out}
@keyframes cast{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-40deg)}25%{opacity:.9}100%{opacity:0;transform:translate(-50%,-50%) scale(1.15) rotate(60deg)}}
.cat{border:1px solid var(--line);border-radius:14px;background:var(--panel);backdrop-filter:blur(8px);min-width:0;transition:border-color .3s,box-shadow .3s;display:flex;flex-direction:column}
.cat:hover{border-color:var(--line2);box-shadow:0 0 30px rgba(61,255,176,.08)}
.cat-top{display:flex;gap:14px;align-items:center;padding:16px 18px 10px}
.ring{flex:none;width:68px;height:68px}
.ring .arc{transition:stroke-dasharray .7s cubic-bezier(.2,.8,.2,1)}
.cat h3{margin:0;font-family:var(--display);font-size:21px;display:flex;gap:8px;align-items:baseline}
.cat h3 small{font-family:var(--mono);font-size:11px;color:var(--muted);font-weight:400}
.cat .head{margin:1px 0 0;font-size:14px}
.cat .agree{font-size:12px;color:var(--muted);margin-top:3px}
.hz{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:0 18px 12px}
.hz button{font:inherit;background:transparent;border:1px solid var(--line);border-radius:9px;padding:6px 2px;color:var(--muted);cursor:pointer;display:flex;flex-direction:column;align-items:center;line-height:1.25;transition:all .25s}
.hz button b{font-size:12.5px;font-weight:500;color:var(--fg)}
.hz button span{font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums}
.hz button:hover{border-color:var(--line2)}
.hz button[aria-pressed="true"]{border-color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--c) 30%,transparent)}
.hz button[aria-pressed="true"] span{color:var(--c)}
.dots{display:flex;gap:6px;flex-wrap:wrap;padding:0 18px 12px}
.dot{font-family:var(--mono);font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 8px 1px 6px;display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}
.dot i{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 6px var(--c)}
.dot b{font-weight:500;color:var(--fg)}
details.more{border-top:1px solid var(--line);margin-top:auto}
details.more>summary{list-style:none;cursor:pointer;padding:10px 18px;font-size:13px;color:var(--emerald);display:flex;justify-content:space-between;align-items:center}
details>summary::-webkit-details-marker{display:none}
summary .chev{transition:transform .3s;display:inline-block}
details[open]>summary .chev{transform:rotate(180deg)}
.voices{list-style:none;margin:0;padding:0 18px 16px;display:flex;flex-direction:column;gap:10px;animation:open .4s ease}
@keyframes open{from{opacity:0;transform:translateY(-4px)}}
.voices li{display:grid;grid-template-columns:76px 30px minmax(0,1fr);gap:10px;font-size:13.5px;color:var(--fg);align-items:start}
.voices .who{font-weight:600;font-size:12.5px;color:var(--c)}
.voices .sc{font-family:var(--mono);font-size:12px;color:var(--fg);text-align:right;font-variant-numeric:tabular-nums}
.voices i{font-style:normal;color:inherit}
.voices em{font-style:normal;color:var(--muted);font-size:12px;display:block}
.tarotrow{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:14px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);font-size:13.5px;color:var(--muted)}
.tarotrow b{color:var(--fg)}
.tcards{display:flex;gap:6px}
.tcard{width:38px;height:58px;border-radius:5px;border:1px solid rgba(233,196,106,.6);background:linear-gradient(160deg,#2c2216,#0b0907);display:grid;place-items:center;box-shadow:0 0 14px rgba(233,196,106,.22);font-family:var(--latin);color:var(--gold-ink);font-size:11px;animation:flip .7s both}
.tcard:nth-child(2){animation-delay:.08s}.tcard:nth-child(3){animation-delay:.16s}.tcard:nth-child(4){animation-delay:.24s}
@keyframes flip{from{transform:rotateY(90deg);opacity:.2}}
button.draw{font:inherit;font-size:13px;color:#032016;background:var(--emerald);border:0;border-radius:8px;padding:7px 14px;cursor:pointer;margin-left:auto;box-shadow:0 0 16px rgba(61,255,176,.35)}
button:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* panels */
.panels{display:flex;flex-direction:column;gap:12px}
details.panel{border:1px solid var(--line);border-radius:14px;background:var(--panel);backdrop-filter:blur(8px)}
details.panel>summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;align-items:center;gap:14px}
details.panel>summary .g{width:34px;height:34px;flex:none}
details.panel>summary h3{margin:0;font-family:var(--display);font-size:19px}
details.panel>summary p{margin:0;font-size:13px;color:var(--muted)}
details.panel>summary .chev{margin-left:auto;color:var(--emerald)}
.pbody{padding:0 20px 20px;animation:open .4s ease}
.natal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media all{.natal{grid-template-columns:1fr}}
.natal div h4{margin:0 0 4px;font-size:12px;letter-spacing:.12em;color:var(--emerald);font-weight:500}
.natal div p{margin:0;font-size:14px;color:#c4d9d3}
.pillars{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.pl{border:1px solid var(--line);border-radius:10px;padding:8px 12px;text-align:center;min-width:64px}
.pl .t{font-size:10px;color:var(--muted)}
.pl .h{font-family:var(--display);font-size:22px;line-height:1.25;color:var(--gold-ink)}
.pl.me{border-color:var(--emerald);box-shadow:0 0 18px rgba(61,255,176,.2)}.pl.me .h{color:var(--emerald)}
.pl.wide .h{font-size:14.5px;line-height:1.7}
.netctl{display:flex;gap:10px 18px;margin-bottom:6px;flex-wrap:wrap}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chips button{font:inherit;font-size:13px;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:5px 13px;cursor:pointer;transition:all .2s}
.chips button[aria-pressed="true"]{color:var(--c,var(--emerald));border-color:var(--c,var(--emerald));background:color-mix(in srgb,var(--c,#1F7A95) 10%,transparent)}
.modetabs{display:flex;width:min(560px,100%);margin:0 auto 16px;border:1px solid var(--line2);border-radius:14px;overflow:hidden;background:var(--panel)}
.modetabs button{flex:1;font:inherit;font-size:15px;background:transparent;border:0;color:var(--muted);padding:12px 10px;cursor:pointer;display:flex;flex-direction:column;align-items:center;line-height:1.3;transition:all .25s}
.modetabs button small{font-family:var(--mono);font-size:10.5px;opacity:.8}
.modetabs button[aria-pressed="true"]{color:#032016;background:var(--emerald);box-shadow:0 0 22px rgba(61,255,176,.35)}
.tnote{margin:10px 4px 0;font-size:12.5px;color:var(--dim)}
/* life map */
.lm{display:grid;grid-template-columns:64px repeat(var(--n),minmax(0,1fr));gap:4px;align-items:stretch}
.lh{background:transparent;border:0;padding:2px 0 6px;text-align:center;color:var(--muted);font:inherit;position:relative;cursor:pointer;display:flex;flex-direction:column;align-items:center;line-height:1.25}
.lh b{font-size:13px;color:var(--fg);font-weight:500}.lh small{font-family:var(--mono);font-size:10px;color:var(--dim)}
.lh.sel b{color:var(--emerald)}.lh.past b{color:var(--muted)}
.lh em{font-style:normal;font-size:10px;border-radius:999px;padding:0 6px;margin-top:3px;white-space:nowrap}
.lh .now{background:#C08A2E;color:#1a1208}.lh .pk{border:1px solid #1F7A95;color:#1F7A95}.lh .lw{border:1px solid #ff5d73;color:#ff5d73}
.rl{font-size:12.5px;display:flex;align-items:center;color:var(--muted);white-space:nowrap}
.tl{position:relative;height:56px}
.tl svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.tlv{position:absolute;inset:auto 0 -2px 0;display:grid;grid-template-columns:repeat(8,1fr);text-align:center;font-family:var(--mono);font-size:10.5px;color:var(--dim)}
.tlv .on{color:#C08A2E}
.cell{font:inherit;border:1px solid transparent;border-radius:7px;height:44px;cursor:pointer;position:relative;background:color-mix(in srgb,var(--c) calc(var(--a)*70%),#120e0a);transition:transform .2s,box-shadow .2s}
.cell span{font-family:var(--mono);font-size:12.5px;color:#0b0907;font-weight:600}
.cell:hover{transform:translateY(-2px);box-shadow:0 0 14px color-mix(in srgb,var(--c) 45%,transparent)}
.cell.past{filter:saturate(.35) brightness(.7)}
.cell.sel{border-color:#4A352B;box-shadow:0 0 0 1px #4A352B,0 0 16px color-mix(in srgb,var(--c) 50%,transparent)}
.lsum{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border-radius:10px;background:linear-gradient(90deg,rgba(61,255,176,.08),transparent);border-left:2px solid var(--emerald);font-size:14px}
.lsum .chap{font-family:var(--display);font-weight:700;color:var(--gold-ink);font-size:16px}
@media all{.lm{grid-template-columns:44px repeat(var(--n),minmax(0,1fr));gap:3px}.lh b{font-size:11.5px}.lh small{display:none}.lh em{font-size:9px;padding:0 3px}.rl{font-size:11px;white-space:normal;line-height:1.2}.cell{height:38px}.cell span{font-size:11px}}
/* forecast */
.flows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.flow{min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:16px 12px 12px}
.flow-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}
.flow-head h3{margin:0;font-size:17px;color:var(--c)}
.flow-head span{color:var(--muted);font-size:12px}
.flow-summary{margin:4px 0 0;color:var(--fg);font-size:13px}
.flow-plot{position:relative;height:218px;margin-top:8px}
.flow-plot svg{display:block;width:100%;height:218px;overflow:visible}
.flow-grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}
.flow-line{fill:none;stroke:var(--c);stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.flow-scale{position:absolute;left:0;transform:translateY(-50%);color:var(--dim);font:10px var(--mono)}
.flow-point{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;border:0;border-radius:50%;padding:0;background:transparent;color:var(--c);cursor:pointer;display:grid;place-items:center;font:inherit}
.flow-point i{display:block;width:10px;height:10px;border:2px solid var(--c);border-radius:50%;background:var(--bg)}
.flow-point b{position:absolute;bottom:33px;left:50%;transform:translateX(-50%);font:700 15px var(--mono)}
.flow-point[aria-pressed="true"] i{background:var(--c);box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 20%,transparent)}
.flow-point:hover,.flow-point:focus-visible{outline:2px solid var(--c);outline-offset:0}
.flow-times{position:relative;height:38px}
.flow-times span{position:absolute;transform:translateX(-50%);text-align:center;white-space:nowrap;font-size:12px;line-height:1.4;color:var(--muted)}
.flow-times small{display:block;font:10px var(--mono);color:var(--dim)}
@media all{.flows{grid-template-columns:minmax(0,1fr)}.flow{padding:14px 10px 10px}}
.chaps{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.chap{font:inherit;color:var(--fg);border:1px solid var(--line);border-radius:10px;padding:8px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;background:color-mix(in srgb,#C08A2E calc(var(--a)*28%),rgba(18,14,11,.7));transition:transform .2s,border-color .2s}
.chap:hover{transform:translateY(-2px);border-color:var(--line2)}
.chap .cd{font-size:12px;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:2px}
.chap .cd em{font-style:normal;font-size:9.5px;border-radius:999px;padding:0 6px;white-space:nowrap}
.chap .now{background:#C08A2E;color:#1a1208}.chap .pk{border:1px solid #1F7A95;color:#1F7A95}
.chap b{font-family:var(--display);font-size:14px;font-weight:700}
.chap .cs{font-family:var(--mono);font-size:12px;color:var(--gold-ink)}
.chap.past{opacity:.5}
.chap.sel{border-color:var(--emerald);box-shadow:0 0 16px rgba(61,255,176,.25);opacity:1}
.dsum{margin-top:14px;padding:14px 16px;border-radius:12px;background:linear-gradient(90deg,rgba(61,255,176,.07),transparent);border-left:2px solid var(--emerald)}
.dt{margin:0 0 10px;font-size:14px}.chapn{font-family:var(--display);font-weight:700;color:var(--gold-ink);font-size:16px}
.dbars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px}
.db{display:grid;grid-template-columns:64px minmax(0,1fr) 28px;gap:8px;align-items:center;font-size:12.5px}
.db span{color:var(--c)}.db i{height:6px;border-radius:3px;background:rgba(255,255,255,.06);overflow:hidden}.db s{display:block;height:100%;background:var(--c);border-radius:3px;box-shadow:0 0 8px var(--c)}
.db b{font-family:var(--mono);font-size:12px;text-align:right}
.dl{margin:10px 0 0;font-size:13.5px;color:#d8cfc1}

@media all{.chaps{grid-template-columns:repeat(4,minmax(0,1fr))}.dbars{grid-template-columns:minmax(0,1fr)}}
.flow-line.past{stroke-dasharray:5 6;opacity:.45}
.flow-now{stroke:#C08A2E;stroke-width:1;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}
.flow-sel{fill:color-mix(in srgb,var(--c) 9%,transparent);stroke:none}
.flow-point.past{opacity:.6}
.flow-times span.sel{color:var(--c);font-weight:600}
.flow-times .nowt{color:#C08A2E!important}
.flow-summary b{color:var(--c)}
.story .dchips{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:0 18px 10px}
.dchips span{display:flex;flex-direction:column;align-items:center;font-family:var(--mono);font-size:12px;border-radius:7px;padding:4px 0;background:color-mix(in srgb,var(--c) calc(var(--a)*32%),rgba(18,14,11,.7));border:1px solid transparent}
.dchips b{font-family:var(--body);font-weight:500;font-size:10.5px;color:var(--muted)}
.dchips .past{opacity:.55}.dchips .on{border-color:var(--c);box-shadow:0 0 10px color-mix(in srgb,var(--c) 35%,transparent);opacity:1}
.story-t{margin:0;padding:0 18px 18px;font-size:14px;line-height:1.75;color:#d8cfc1}.story-t b{color:var(--c)}
.story-sum{grid-column:1/-1;border:1px solid var(--line2);border-radius:14px;padding:18px 20px;background:linear-gradient(135deg,rgba(61,255,176,.08),rgba(233,196,106,.06))}
.story-sum p{margin:0;font-size:15px;line-height:1.8}.story-sum b{color:var(--gold-ink)}
/* score receipt */
.why-head{display:flex;gap:12px;align-items:center;margin:10px 0 14px}
.wq{margin:0;font-size:13px;color:var(--muted)}.wa{margin:0;font-size:16px}.wa b{font-family:var(--latin);font-size:22px;color:var(--c)}
.why-top{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:16px}
.why-top .lb{font-size:12px;color:var(--muted);margin-right:4px}
.reason{font-size:12.5px;border:1px solid var(--line);border-radius:999px;padding:3px 10px;display:inline-flex;gap:6px;align-items:center}
.reason i{width:7px;height:7px;border-radius:50%}
.reason.up b{color:#1F7A95}.reason.down b{color:#ff5d73}
.wr.axis{font-size:11px;color:var(--dim);margin-bottom:-4px}
.ax{display:flex;justify-content:space-between}.ax em{font-style:normal}
.why{display:flex;flex-direction:column;gap:12px}
.wg{display:flex;flex-direction:column;gap:4px;padding-top:10px;border-top:1px solid var(--line)}
.wo{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:13.5px}
.wo i{width:8px;height:8px;border-radius:50%;align-self:center}
.ws{font-family:var(--mono);font-size:12.5px}.wc{font-size:12px;color:var(--dim)}
.wr{display:grid;grid-template-columns:40% minmax(0,1fr) 40px;gap:8px;align-items:center;font-size:12.5px}
.wl{color:#d8cfc1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wb{position:relative;height:10px;background:linear-gradient(90deg,transparent calc(50% - .5px),rgba(239,233,223,.35) calc(50% - .5px),rgba(239,233,223,.35) calc(50% + .5px),transparent calc(50% + .5px))}
.wb i{position:absolute;top:1px;bottom:1px;border-radius:3px;animation:grow .7s cubic-bezier(.2,.8,.2,1) both}
.wb i.up{left:50%;background:linear-gradient(90deg,rgba(61,255,176,.5),#1F7A95);box-shadow:0 0 8px rgba(61,255,176,.5)}
.wb i.down{right:50%;background:linear-gradient(270deg,rgba(255,93,115,.5),#ff5d73);box-shadow:0 0 8px rgba(255,93,115,.45)}
@keyframes grow{from{width:0}}
.wv{font-family:var(--mono);text-align:right}.wv.up{color:#1F7A95}.wv.down{color:#ff5d73}
.why-foot{margin:14px 0 0;font-size:13px;color:var(--muted)}.why-foot b{color:var(--fg)}
@media all{.wr{grid-template-columns:44% minmax(0,1fr) 34px}}
.decbars{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;padding:0 18px 12px;height:66px}
.decbars button{font:inherit;position:relative;background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:6px;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;padding:0;overflow:hidden}
.decbars button i{display:block;background:var(--c);opacity:.55;border-radius:3px 3px 0 0;margin:0 3px 16px}
.decbars button b{position:absolute;bottom:1px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:10px;font-weight:400;color:var(--muted)}
.decbars button.past i{opacity:.22}
.decbars button[aria-pressed="true"]{border-color:var(--c);box-shadow:0 0 12px color-mix(in srgb,var(--c) 35%,transparent)}
.decbars button[aria-pressed="true"] i{opacity:1;box-shadow:0 0 8px var(--c)}
.decbars button[aria-pressed="true"] b{color:var(--c)}
.note{font-size:13.5px;color:var(--muted);max-width:75ch}
.note p{margin:0 0 10px}.note b{color:var(--fg)}
.rules{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:8px}
.rules div{border-top:1px solid var(--line);padding-top:10px;font-size:13px;color:var(--muted)}
.rules b{display:block;color:var(--fg);margin-bottom:2px}
@media (prefers-reduced-motion:reduce){*,*::after{animation:none!important;transition:none!important}.natalpts{opacity:.55}#net .flow{stroke-dasharray:none}}

/* Result sharing: preview includes no identifying birth information. */
.share-actions{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.share-actions button,.share-dialog button{font:inherit;cursor:pointer;border:1px solid var(--line2);border-radius:10px;padding:10px 16px;background:var(--field);color:var(--emerald)}
.share-actions small,.share-dialog p{color:var(--muted)}
.share-dialog{width:min(480px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:1px solid var(--line2);border-radius:18px;padding:24px;background:var(--bg);color:var(--fg)}
.share-dialog::backdrop{background:var(--panel)}
.share-dialog h2{font-size:24px;margin:0}
.share-dialog textarea{display:block;width:100%;min-height:220px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--field);color:var(--fg);font:inherit;line-height:1.7}
.share-dialog .share-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.share-dialog button:focus-visible,.share-actions button:focus-visible{outline:2px solid var(--emerald);outline-offset:3px}
#share-status{min-height:1.7em;margin-bottom:0}
.share-sns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0 12px}
.share-dialog .share-sns button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;font-size:13px;color:var(--fg);border-radius:12px}
.share-sns i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font-style:normal;font-weight:800;font-size:17px}
.sns-kakao i{background:var(--kakao-bg);color:var(--kakao-fg)}
.sns-insta i{background:linear-gradient(45deg,#f9a03f,#e1306c 55%,#833ab4);color:#fff}
.sns-threads i,.sns-x i{background:#f5f5f5;color:#111}
.share-dialog textarea{min-height:96px}

/* Network identity and graph sharing gate */
.hero-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hero-top .eyebrow{letter-spacing:.2em;font-size:11px}
.hero-top .share-actions{margin:0;flex-shrink:0}
.hero-top button{white-space:nowrap}
.sigil{display:none}
.trend{position:relative;isolation:isolate}
#graph-content{transition:filter .3s}
.is-locked #graph-content{filter:blur(9px);pointer-events:none;user-select:none}
.graph-gate{position:absolute;inset:0;z-index:2;display:flex;justify-content:center;align-items:flex-start;padding:70px 12px 24px;background:var(--panel);border-radius:16px}
.gate-card{position:sticky;top:70px;max-width:440px;width:100%;padding:26px 20px;text-align:center;background:var(--bg);border:1px solid var(--line2);border-radius:18px}
.gate-card h3{font-family:var(--display);font-size:clamp(20px,4vw,26px);margin:12px 0}
.gate-card p{color:var(--muted)}
.gate-card small{display:block;margin-top:14px;color:var(--muted);font-size:12px}
.gate-card button{width:100%;padding:13px 10px;border:1px solid var(--emerald);border-radius:10px;background:var(--field);color:var(--emerald);font:inherit;font-weight:600;cursor:pointer}
.gate-card button:focus-visible{outline:2px solid var(--fg);outline-offset:4px}
#unlock-status:empty{display:none}
#unlock-status{color:var(--emerald);font-size:13px}
@media(prefers-reduced-motion:reduce){#graph-content{transition:none}}

/* Simple directional axes; dots show category, not a measured probability. */
.natalbox .type{margin:12px 0 20px;font-size:clamp(17px,2.8vw,21px);line-height:1.8}
.trait-table{width:100%;border-collapse:collapse;table-layout:fixed}
.trait-table caption{text-align:left;font-size:13px;color:var(--muted);margin-bottom:12px}
.trait-table th{width:56px;text-align:left;font-size:13px;font-weight:500}
.trait-table td{padding:12px 0}
.trait-table .trait-end{width:44px;text-align:center;color:var(--muted);font-size:13px;white-space:nowrap}
.trait-table .selected{color:var(--trait-dot);font-weight:600}
.trait-axis-cell{padding-inline:12px!important}
.trait-axis{display:block;height:2px;background:var(--line2);position:relative}
.trait-axis::after{content:"";position:absolute;left:50%;top:-3px;width:1px;height:8px;background:var(--muted)}
.trait-dot{position:absolute;z-index:1;left:var(--dot);top:50%;width:10px;height:10px;border-radius:50%;background:var(--trait-dot);transform:translate(-50%,-50%)}
.trait-note{font-size:12px;color:var(--muted);line-height:1.7;margin:12px 0}
.natal-more{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}
.natal-more .natal{margin-top:20px}
.voices .reading-caution{color:var(--fg);font-weight:400}
.voices .reading-basis,.voices em{display:block;font-style:normal;font-size:12px;line-height:1.6;color:var(--muted);font-weight:400;margin-top:5px}
.classification-note{font-size:11px;color:var(--muted)}

/* Supplied artwork: restrained drift and light, always behind the content. */
#sky{opacity:.28}
#oracle-dream{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}
#oracle-dream img{position:absolute;right:-3vw;bottom:-4vh;height:110vh;width:auto;max-width:none;opacity:.58;object-fit:contain;mask-image:linear-gradient(90deg,transparent,var(--fg) 18%);transform-origin:60% 70%;animation:artwork-float 32s ease-in-out infinite;will-change:transform}
#oracle-dream::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 76% 70%,var(--emerald),transparent 53%);opacity:.035;mix-blend-mode:screen;animation:artwork-light 14s ease-in-out infinite}
@keyframes artwork-float{0%,100%{transform:translate3d(0,0,0) scale(1.02)}50%{transform:translate3d(-7px,-10px,0) scale(1.045)}}
@keyframes artwork-light{0%,100%{opacity:.025}50%{opacity:.075}}
@media all{#oracle-dream img{right:0;bottom:0;width:100%;height:100%;object-fit:cover;object-position:center center;opacity:.42;mask-image:none}#oracle-dream::after{background:radial-gradient(ellipse at 50% 72%,var(--emerald),transparent 65%)}}
@media(prefers-reduced-motion:reduce){#oracle-dream img,#oracle-dream::after{animation:none!important;will-change:auto}}

/* ---- 2026-10 정리: 글자 3단계, 그래프는 상자 없이, 폰에서 칩 숨김, 풀이 전문 ---- */
:root{--fs-s:13px;--fs-b:15px;--fs-r:17px;--ink:#e8decd}
.lede,.gifts li,.vline,.flow-summary,.story-t,.cat .head,.story-sum p{font-size:var(--fs-b)}
.cat .agree,.flow-head span,.tnote,.rare,.dot,.tarotrow,.tarotrow span,.chap .cd,.hz button b{font-size:var(--fs-s)}
.trend{border:0;background:transparent;backdrop-filter:none;padding:4px 0 0}
.flow{border:0;border-top:2px solid color-mix(in srgb,var(--c) 45%,transparent);border-radius:0;background:transparent;padding:14px 2px 8px}
.flows{gap:22px 36px}
.tarotrow{border:0;background:transparent;padding:6px 0 0}
.gifts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:4px 0 16px}
.gifts li{padding:0;display:flex;flex-direction:column;gap:2px;color:var(--muted);font-size:var(--fs-s);line-height:1.55}
.gifts li::before{display:none}
.gifts li b{font-family:var(--display);font-size:var(--fs-b);color:var(--gold-ink);font-weight:700}
@media all{.gifts{grid-template-columns:minmax(0,1fr);gap:10px}.cat .dots{display:none}}
.reading{margin-top:8px}
.reading details{border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
.reading summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:center;padding:22px 2px}
.reading summary::-webkit-details-marker{display:none}
.r-head{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.r-title{font-family:var(--display);font-weight:800;font-size:clamp(22px,3vw,28px);color:var(--fg)}
.r-teaser{font-family:var(--display);font-size:var(--fs-b);line-height:1.7;color:var(--muted);max-width:44em}
.r-open{flex:none;font-size:var(--fs-s);color:#032016;background:var(--emerald);border-radius:999px;padding:8px 16px;font-weight:600}
.reading details[open] .r-open{background:transparent;color:var(--emerald);box-shadow:inset 0 0 0 1px var(--emerald)}
.reading details[open] .r-open::after{content:" 접기"}
.reading details[open] .r-open{font-size:0}.reading details[open] .r-open::after{font-size:var(--fs-s)}
.reading summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.r-body{padding:4px 0 36px;max-width:40em}
.r-ch{margin-top:30px}
.r-ch h3{margin:0 0 14px;font-family:var(--display);font-size:22px;color:var(--gold-ink);font-weight:700}
.r-ch h4{margin:26px 0 8px;font-size:var(--fs-b);font-weight:600;color:var(--fg);display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.r-ch h4 span{font-weight:400;font-size:var(--fs-s);color:var(--muted);font-variant-numeric:tabular-nums}
.r-ch p{margin:0 0 14px;font-family:var(--display);font-size:var(--fs-r);line-height:1.95;color:var(--ink);word-break:keep-all}
.r-ch .r-weak{padding-left:14px;border-left:2px solid rgba(255,134,176,.45)}
.turns{list-style:none;margin:18px 0 0;padding:0 0 0 18px;border-left:1px solid var(--line2);display:flex;flex-direction:column;gap:20px}
.turns li{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px}
.turns li::before{content:"";position:absolute;left:-23px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(233,196,106,.15)}
.t-age{font-weight:600;font-size:var(--fs-b);color:var(--fg);font-variant-numeric:tabular-nums;display:flex;flex-direction:column;line-height:1.4}
.t-age small{font-weight:400;font-size:var(--fs-s);color:var(--muted)}
.turns p{margin:0}
.turns em{display:block;font-style:normal;font-family:var(--body);font-size:var(--fs-s);color:var(--dim);margin-top:2px}
@media all{.r-ch p{font-size:16px;line-height:1.9}.turns li{grid-template-columns:minmax(0,1fr);gap:2px}.t-age{flex-direction:row;gap:8px;align-items:baseline}.reading summary{flex-direction:column;align-items:flex-start}}

/* 운 카드 미니 그래프와 풀이 */
.mini{position:relative;height:132px;margin:2px 18px 6px}
.mini svg{position:absolute;left:0;top:0;width:100%;height:96px;overflow:visible}
.mini-g{stroke:var(--line);stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.mini-l{fill:none;stroke:var(--c);stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.mini-pt{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;border:0;padding:0;background:transparent;cursor:pointer;display:grid;place-items:center;font:inherit;color:var(--muted)}
.mini-pt i{width:10px;height:10px;border-radius:50%;border:2px solid var(--c);background:var(--bg)}
.mini-pt b{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:var(--fs-s);font-weight:500}
.mini-pt[aria-pressed="true"] i{background:var(--c);box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 22%,transparent)}
.mini-pt[aria-pressed="true"] b{color:var(--c);font-weight:700}
.mini-pt:focus-visible{outline:2px solid var(--c);outline-offset:-4px;border-radius:50%}
.mini-x{position:absolute;left:0;right:0;top:100px;height:30px}
.mini-x span{position:absolute;transform:translateX(-50%);text-align:center;white-space:nowrap;font-size:var(--fs-s);color:var(--muted);line-height:1.3}
.mini-x small{display:block;font-family:var(--mono);font-size:10.5px;color:var(--dim)}
.mini-x .on{color:var(--fg);font-weight:600}
.cread{padding:4px 18px 18px;animation:open .4s ease}
.cread h4{margin:18px 0 6px;font-size:var(--fs-b);font-weight:600;display:flex;gap:8px;align-items:baseline}
.cread h4:first-child{margin-top:6px}
.cread h4 span{font-weight:400;font-size:var(--fs-s);color:var(--muted)}
.cread h4 .yh{display:inline-flex;flex-direction:column;line-height:1.25;font-weight:600;font-size:var(--fs-b);color:var(--fg)}
.cread h4 .yh small{font-weight:400;font-size:var(--fs-s);color:var(--muted)}
.cread p{margin:0;font-family:var(--display);font-size:16px;line-height:1.9;color:var(--ink);word-break:keep-all}
.mini-turns{margin-top:14px;gap:14px}
.mini-turns p{font-size:15px;line-height:1.8}
.mini-turns li{grid-template-columns:64px minmax(0,1fr)}
@media all{.mini{margin-inline:14px}.cread{padding-inline:14px}.mini-turns li{grid-template-columns:minmax(0,1fr)}}
.cats{align-items:start}
.mini{height:162px}.mini svg{height:125px}.mini-x{top:128px}

/* 그래프 곡선 그리기 애니메이션, 풀이 전문 불투명 상자 */
.flow-line.draw,.mini-l.draw{stroke-dasharray:1;stroke-dashoffset:1;animation:drawline 1.1s cubic-bezier(.4,0,.2,1) forwards}
@keyframes drawline{to{stroke-dashoffset:0}}
.flow-point,.mini-pt{transition:top .5s cubic-bezier(.4,0,.2,1)}
.flow-point i,.mini-pt i{transition:background .3s,box-shadow .3s,transform .3s}
.flow-point[aria-pressed="true"] i,.mini-pt[aria-pressed="true"] i{transform:scale(1.15)}
.reading details{background:rgba(255,253,250,.96);border:1px solid var(--line2);border-radius:16px;padding:0 24px;box-shadow:0 18px 50px rgba(0,0,0,.45)}
@media all{.reading details{padding:0 16px}}
@media (prefers-reduced-motion:reduce){.flow-line.draw,.mini-l.draw{animation:none;stroke-dashoffset:0}}

/* 출생 정보 요약 */
:root{--el0:#48f0a6;--el1:#ff7a6b;--el2:#C08A2E;--el3:#d9d4ca;--el4:#52d6ff}
.pillars{display:block;margin-top:20px}
.cs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 28px}
.cs-block h4,.cs-rows dt{margin:0 0 8px;font-size:var(--fs-s);color:var(--muted);font-weight:500}
.pzs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.pz{border:1px solid var(--line);border-radius:10px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:2px}
.pz.me{border-color:var(--emerald);box-shadow:0 0 16px rgba(61,255,176,.18)}
.pz-l{font-size:11px;color:var(--muted)}.pz.me .pz-l{color:var(--emerald)}
.pz-h{font-family:var(--display);font-size:22px;line-height:1.2;display:flex;flex-direction:column;align-items:center}
.pz-h i{font-style:normal}
.pz-k{font-size:12px;color:var(--fg)}
.cs-note{margin:8px 0 0;font-size:var(--fs-s);color:#d8cfc1;line-height:1.6}
.ebs{display:flex;flex-direction:column;gap:6px}
.eb{display:grid;grid-template-columns:56px minmax(0,1fr) 18px;gap:8px;align-items:center;font-size:var(--fs-s)}
.eb i{height:8px;border-radius:4px;background:rgba(255,255,255,.06);overflow:hidden}
.eb s{display:block;height:100%;border-radius:4px}
.eb b{font-family:var(--mono);font-weight:500;text-align:right}
.cs-rows{grid-column:1/-1;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}
.cs-rows div{min-width:0;padding-top:10px;border-top:1px solid var(--line)}
.cs-rows dt{margin-bottom:2px}
.cs-rows dd{margin:0;display:flex;flex-direction:column;gap:1px}
.cs-rows dd b{font-family:var(--display);font-size:16px;color:var(--gold-ink);font-weight:700}
.cs-rows dd span{font-size:var(--fs-s);color:#d8cfc1;line-height:1.55}
@media all{.cs{grid-template-columns:minmax(0,1fr)}.cs-rows{grid-template-columns:minmax(0,1fr)}}

/* 해마다 점 */
.yr-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--c);opacity:.6;transform:translate(-50%,-50%);box-shadow:0 0 0 6px transparent;cursor:help}

.cread h4 .yscore{margin-left:auto;font-style:normal;font-family:var(--latin);font-size:16px;font-weight:700}
.cread .ysum{font-family:var(--body);font-size:var(--fs-b);font-weight:600;color:var(--fg);margin:0 0 4px;line-height:1.6}

.mini-x span{font-size:11.5px}.mini-x small{font-size:10px}
@media all{.flow-times span{font-size:11.5px}.flow-times small{display:none}}

.ymark{display:inline-block;font-size:11px;font-weight:600;color:#1a1208;background:var(--gold);border-radius:999px;padding:1px 8px;margin-right:6px;vertical-align:2px}


.bigchart{margin:22px 0 4px;padding:18px 0 4px;border-top:1px solid var(--line)}
.bc-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:6px}
.bc-head h3{font-family:var(--display);font-size:clamp(19px,2.6vw,23px);color:var(--gold-ink);margin:0}
.bc-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted)}
.bc-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}
.bc-plot svg{display:block;width:100%;height:auto}
.bc-grid{stroke:var(--line)}
.bc-t{font:12px var(--mono);fill:var(--dim)}
.bc-line{fill:none;stroke-width:2.4}
.bc-line.draw{stroke-dasharray:1;stroke-dashoffset:1;animation:drawline 1.4s cubic-bezier(.4,0,.2,1) forwards}
.bc-pt{cursor:pointer;transition:r .2s}
.bc-pt.top{stroke:var(--bg);stroke-width:2.5}
.bc-pt:hover,.bc-pt:focus-visible{outline:none;stroke:var(--fg);stroke-width:2}
.bc-note{margin:6px 0 0;font-size:12px;color:var(--dim)}
@media all{.bigchart{padding:14px 0 4px}.bc-line{stroke-width:2.2}}

.sumbox{margin-top:26px;padding:22px 22px 8px;border:1px solid var(--line2);border-radius:16px;background:rgba(255,253,250,.96)}
.sumbox .r-title{display:block;margin:0 0 14px}
.sum-prose p{font-family:var(--display);font-size:var(--fs-r);line-height:2.05;color:var(--ink);margin:0 0 16px;max-width:38em;word-break:keep-all}
.sum-prose p:first-child::first-line{color:var(--fg)}
.sum-prose strong{color:var(--fg);font-weight:700}
.sum-prose .sum-more{font-family:var(--body);font-size:var(--fs-s);color:var(--dim);margin:4px 0 14px}
@media all{.sum-prose p{font-size:16px;line-height:1.95}}

.sum-l{margin:0}
.sum-l div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;padding:12px 0;border-top:1px solid var(--line)}
.sum-l div:first-child{border-top:0}
.sum-l dt{font-size:var(--fs-s);color:var(--gold-ink);padding-top:3px}
.sum-l dd{margin:0;font-family:var(--display);font-size:16px;line-height:1.8;color:var(--ink);word-break:keep-all}
@media all{.sumbox{padding:18px 16px 6px}.sum-l div{grid-template-columns:minmax(0,1fr);gap:2px}}
.report-cta{display:grid;grid-template-columns:200px minmax(0,1fr);gap:26px;align-items:center;text-align:left}
.rc-book{aspect-ratio:3/4;max-width:100%;border:1px solid rgba(233,196,106,.6);border-radius:6px 14px 14px 6px;padding:22px 16px;display:flex;flex-direction:column;justify-content:center;gap:6px;text-align:center;background:radial-gradient(ellipse at 50% 30%,rgba(61,255,176,.16),transparent 65%),linear-gradient(160deg,#1b1610,#0d0a07);box-shadow:inset 6px 0 0 rgba(233,196,106,.25),0 18px 40px rgba(0,0,0,.5),0 0 30px rgba(233,196,106,.12)}
.rc-book .eyebrow{font-size:9px;letter-spacing:.24em}
.rc-book b{font-family:var(--display);font-size:20px;color:var(--fg);margin-top:10px}
.rc-book em{font-style:normal;font-family:var(--display);font-weight:800;font-size:26px;color:var(--gold-ink)}
.rc-book small{font-size:10px;color:var(--muted);margin-top:10px}
.rc-info h3{margin:6px 0 8px}
.rc-info p{margin:0 0 12px;max-width:none}
.rc-toc{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px}
.rc-toc li{display:grid;gap:1px;padding-left:12px;border-left:2px solid var(--gold)}
.rc-toc li.soon{border-left-color:var(--line2)}
.rc-toc b{font-size:14px;color:var(--fg)}
.rc-toc span{font-size:13px;color:var(--muted)}

/* hook + lock zone + report */
.hook{margin:14px 0 18px;padding:16px 18px;border:1px solid var(--line2);border-radius:14px;background:var(--panel);font-family:var(--display);font-size:clamp(17px,2.4vw,19px);line-height:1.8;color:var(--ink);word-break:keep-all}
.hook b{color:var(--fg)}
.is-locked #graph-content{max-height:1150px;overflow:hidden}
.report-cta{margin-top:28px;padding:26px 22px;border:1px solid rgba(233,196,106,.4);border-radius:18px;background:linear-gradient(135deg,rgba(233,196,106,.09),transparent 70%);text-align:center}
.report-cta .eyebrow{color:var(--gold-ink);font-size:11px}
.report-cta h3{font-family:var(--display);font-size:clamp(22px,3vw,28px);margin:8px 0}
.report-cta p{color:var(--muted);max-width:44ch;margin:0 auto 16px;word-break:keep-all}
.report-cta button{font:inherit;font-weight:600;color:#1a1204;background:var(--gold);border:0;border-radius:10px;padding:12px 26px;cursor:pointer;box-shadow:0 0 24px rgba(233,196,106,.35)}
.report-cta button:focus-visible,#reportClose:focus-visible,.r-rail a:focus-visible{outline:2px solid var(--fg);outline-offset:3px}
html.rep-lock,html.rep-lock body{overflow:hidden}
.report{position:fixed;inset:0;z-index:50;overflow-y:auto;background:var(--bg);-webkit-overflow-scrolling:touch}
.report-bar{position:sticky;top:0;z-index:3;padding:calc(10px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));background:var(--bg);border-bottom:1px solid var(--line)}
#reportClose{font:inherit;font-size:14px;color:var(--fg);background:var(--field);border:1px solid var(--line2);border-radius:999px;padding:6px 14px;cursor:pointer}
.report-in{max-width:860px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:22px 64px}
.r-cover{border:1px solid var(--line2);border-radius:20px;padding:40px 22px 30px;text-align:center;background:radial-gradient(ellipse at 50% 0%,rgba(61,255,176,.12),transparent 70%),var(--panel)}
.r-cover h2{font-family:var(--display);font-weight:800;font-size:clamp(32px,6vw,48px);line-height:1.2;margin:14px 0 8px}
.r-cover h2 em{font-style:normal;color:var(--gold-ink)}
.r-cover p{color:var(--muted);margin:0}
.r-rail{position:sticky;top:calc(52px + env(safe-area-inset-top,0px));z-index:2;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:14px -4px 0;padding:8px 4px;background:var(--bg)}
.r-rail::-webkit-scrollbar{display:none}
.r-rail a{flex:none;font-size:13px;color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:5px 12px;background:var(--field)}
.r-rail a b{font-family:var(--mono);font-weight:500;color:var(--emerald);margin-right:6px;font-size:11px}
.r-page{margin-top:18px;border:1px solid var(--line);border-radius:18px;background:#120e0b;padding:28px clamp(16px,4vw,38px) 24px;scroll-margin-top:110px}
.r-ph{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:20px}
.r-ph .eyebrow{font-size:11px}
.r-badge{font-size:11px;color:var(--gold-ink);border:1px dashed rgba(233,196,106,.5);border-radius:6px;padding:1px 8px}
.r-page h2{font-family:var(--display);font-weight:800;font-size:clamp(24px,4.5vw,30px);line-height:1.3;margin:0}
.r-page h2 small{display:block;font-family:var(--body);font-weight:400;font-size:14px;color:var(--muted);margin-top:6px}
.r-page h3{font-family:var(--display);font-weight:700;font-size:20px;color:var(--gold-ink);margin:28px 0 10px}
.r-lead{font-family:var(--display);font-size:clamp(19px,3.4vw,23px);line-height:1.75;color:var(--fg);margin:18px 0 6px;word-break:keep-all}
.r-prose p,.r-sp{font-family:var(--display);font-size:17px;line-height:2;color:var(--ink);max-width:36em;word-break:keep-all;margin:0 0 12px}
.r-prose strong{color:var(--fg)}
.r-kw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 4px}
.r-kw div,.r-kv div{border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:var(--field);min-width:0}
.r-kw b{display:block;font-family:var(--display);font-size:19px;margin-bottom:4px}
.r-kw span,.r-kv span{display:block;font-size:13px;color:var(--muted);line-height:1.6}
.r-agree{list-style:none;margin:6px 0 0;padding:0}
.r-agree li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.r-agree li:last-child{border-bottom:0}
.r-agree .dots{display:flex;gap:4px;padding-top:8px}
.r-agree .dots i{width:8px;height:8px;border-radius:50%;background:var(--line2)}
.r-agree .dots i.on{background:var(--emerald);box-shadow:0 0 8px rgba(61,255,176,.6)}
.r-agree b{display:block;font-family:var(--display);font-size:17px}
.r-agree span{display:block;font-size:14px;color:var(--muted)}
.r-agree small{font-size:12px;color:var(--dim)}
.r-hook{margin:18px 0 0;padding:14px 16px;border-left:2px solid var(--emerald);background:rgba(61,255,176,.05);font-size:15px;color:var(--ink);word-break:keep-all}
.r-hook b{color:var(--fg)}
.r-chart{overflow-x:auto}.r-chart svg{display:block;width:100%;min-width:520px;height:auto}
.rc-t{font:11px var(--mono);fill:var(--dim)}
.r-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--muted);margin-top:6px}
.r-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}
.r-tbl{overflow-x:auto;margin:10px 0 4px}
.r-tbl table{border-collapse:collapse;width:100%;font-size:14px;min-width:440px}
.r-tbl th,.r-tbl td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.r-tbl th{font-weight:500;color:var(--muted);font-size:12px}
.r-tbl td.num{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.r-tbl tr.now td{color:var(--emerald)}
.rc{font-weight:600}
.r-tl{list-style:none;margin:8px 0 0;padding:0 0 0 18px;border-left:1px solid var(--line2)}
.r-tl li{position:relative;padding:0 0 16px 14px}
.r-tl li::before{content:"";position:absolute;left:-23px;top:8px;width:9px;height:9px;border-radius:50%;background:var(--gold)}
.r-tl .when{font-family:var(--mono);font-size:12px;color:var(--gold-ink)}
.r-tl b{display:block;font-family:var(--display);font-size:17px;margin:2px 0}
.r-tl span{display:block;font-size:14px;color:var(--muted);max-width:40em}
.r-advice{margin-top:24px;border:1px solid rgba(233,196,106,.35);border-radius:14px;padding:16px 18px;background:linear-gradient(135deg,rgba(233,196,106,.08),transparent 70%)}
.r-advice .eyebrow{color:var(--gold-ink);font-size:11px}
.r-advice p{font-family:var(--display);font-size:19px;line-height:1.8;margin:6px 0 0;word-break:keep-all}
.r-pils{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 8px}
.r-pil{border:1px solid var(--line);border-radius:12px;padding:12px 4px 10px;text-align:center;background:var(--field);min-width:0}
.r-pil.me{border-color:var(--emerald)}
.r-pil small{display:block;font-size:11px;color:var(--muted)}
.r-pil .g{display:block;font-family:var(--display);font-weight:800;font-size:clamp(26px,7vw,38px);line-height:1.15}
.r-pil .r{font-size:12px;color:var(--ink)}
.r-pil .tg{display:block;font-size:11px;color:var(--dim);margin-top:2px}
.r-note{font-size:13px;color:var(--dim)}
.r-bars{display:grid;gap:7px;margin:10px 0 12px;max-width:520px}
.r-bar{display:grid;grid-template-columns:64px minmax(0,1fr) 22px;gap:10px;align-items:center;font-size:13px}
.r-bar .t{height:8px;border-radius:4px;background:var(--line)}.r-bar .t i{display:block;height:100%;border-radius:4px}
.r-bar .n{font-family:var(--mono);text-align:right}
.r-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 4px}
.r-kv small{display:block;font-size:11px;color:var(--muted)}
.r-kv b{display:block;font-family:var(--display);font-size:18px;margin:2px 0}
.r-soon{opacity:.85}
.r-foot{margin-top:24px;text-align:center;font-size:12px;color:var(--dim)}
@media all{.r-kw,.r-kv{grid-template-columns:minmax(0,1fr)}}

.report-cta.report-cta{text-align:left;background:linear-gradient(135deg,rgba(233,196,106,.1),transparent 70%),#0f0c09}
.rc-info h3{text-wrap:balance}
.rc-info p{color:var(--muted);margin:0 0 14px}
.rc-book em,.rc-book b{white-space:nowrap}
@media all{.report-cta.report-cta{grid-template-columns:minmax(0,1fr);text-align:center}.rc-book{width:160px;margin:0 auto}.rc-book em{font-size:22px}.rc-book b{font-size:17px}.rc-toc{text-align:left}}
.r-detail{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.r-detail summary{cursor:pointer;color:var(--gold-ink);font-size:var(--fs-b)}.r-page td{overflow-wrap:anywhere}.r-page .r-tbl{max-width:100%}
.action-guide{margin:18px 0 24px}.action-guide h3{font-family:var(--display);color:var(--gold-ink);margin:22px 0 8px}.action-guide .r-lead{margin-top:14px}.action-guide .r-note{line-height:1.8}.action-guide a{color:var(--emerald)}
.action-toggle>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;list-style:none;color:var(--fg);font-family:var(--display);font-size:clamp(19px,2.6vw,23px);font-weight:700}.action-toggle>summary::-webkit-details-marker{display:none}.action-toggle>summary .chev{font-family:var(--body);color:var(--emerald)}
.feng-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}.feng-place{min-width:0;border:1px solid var(--line2);border-radius:12px;padding:18px;background:var(--field)}.feng-place h4{font-family:var(--display);font-size:21px;margin:4px 0 12px;color:var(--gold-ink)}.feng-place p{line-height:1.8;font-size:var(--fs-b);margin:8px 0}.feng-place small{color:var(--muted)}.feng-place a{color:var(--emerald);font-size:var(--fs-s)}@media all{.feng-grid{grid-template-columns:minmax(0,1fr)}}

.feng-filters{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:10px;margin:18px 0}.feng-filters label{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-s);color:var(--muted);min-width:0}.feng-filters select,.feng-filters input{width:100%;min-width:0;font:inherit;color:var(--fg);background:var(--field);border:1px solid var(--line2);border-radius:8px;padding:10px}.feng-search{display:flex;gap:6px;align-items:end;min-width:0}.feng-search label{flex:1}.feng-search button,.feng-map-tools button,.feng-empty button{font:inherit;cursor:pointer;border:1px solid var(--line2);border-radius:8px;padding:10px;background:var(--field);color:var(--emerald);min-height:44px}.feng-legend{display:flex;gap:8px 14px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.feng-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.feng-map-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:start;margin-top:14px}.feng-map-wrap{position:relative;border:1px solid var(--line2);border-radius:14px;overflow:hidden;background:var(--field)}.feng-map{display:block;width:100%;height:auto;aspect-ratio:565.7/552}.feng-land{fill:color-mix(in srgb,var(--emerald) 10%,var(--bg));stroke:var(--line2);stroke-width:.5;pointer-events:none}.feng-pin{cursor:pointer}.feng-pin .feng-hit{fill:transparent}.feng-pin.active circle:last-child,.feng-pin:hover circle:last-child,.feng-pin:focus-visible circle:last-child{stroke:var(--fg);stroke-width:3}.feng-pin:focus-visible{outline:none}.feng-map-tools{display:flex;justify-content:center;gap:4px;flex-wrap:wrap;padding:8px;border-top:1px solid var(--line)}.feng-map-tools button{padding:6px 10px;min-width:40px}.feng-selected .feng-place{margin:0}.feng-directions{display:block;padding:12px;color:var(--emerald);font-size:var(--fs-s)}.feng-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:340px;overflow-y:auto;padding:4px;margin-top:14px}.feng-results button{min-width:0;text-align:left;font:inherit;cursor:pointer;background:var(--field);color:var(--fg);border:1px solid var(--line);border-radius:9px;padding:10px;min-height:58px}.feng-results button[aria-pressed=true]{border-color:var(--emerald)}.feng-results span,.feng-results small{display:block;overflow-wrap:anywhere}.feng-results small{font-size:11px;color:var(--muted)}.feng-empty{border:1px dashed var(--line2);padding:18px;border-radius:12px}@media all{.feng-filters{grid-template-columns:1fr 1fr}.feng-search{grid-column:1/-1}.feng-map-layout{grid-template-columns:minmax(0,1fr)}.feng-results{grid-template-columns:repeat(2,minmax(0,1fr))}}


.feng-map{touch-action:none;user-select:none;cursor:grab}.feng-map.dragging{cursor:grabbing}.feng-pin circle:last-child{vector-effect:non-scaling-stroke}.feng-land path{vector-effect:non-scaling-stroke}.feng-ranked{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:6px 3px 14px;margin-bottom:12px}.feng-ranked button{flex:0 0 170px;min-height:78px;text-align:left;font:inherit;cursor:pointer;background:var(--field);color:var(--fg);border:1px solid var(--line2);border-top:3px solid var(--place-color);border-radius:10px;padding:12px;scroll-snap-align:start}.feng-ranked button[aria-pressed=true]{outline:2px solid var(--emerald);outline-offset:-2px}.feng-ranked span,.feng-ranked small{display:block;overflow-wrap:anywhere}.feng-ranked small{font-size:12px;color:var(--muted);margin-top:5px}.feng-rank-note{color:var(--fg);font-size:var(--fs-s);line-height:1.8}.feng-directions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0}.feng-directions a{display:block;color:var(--emerald);font-size:var(--fs-s);padding:10px 12px;border:1px solid var(--line2);border-radius:8px;min-height:44px}.action-why>summary,.action-rationale{color:var(--fg)!important}.action-rationale{font-size:var(--fs-b);line-height:1.95;margin:14px 0}.feng-map-layout{align-items:start}


.feng-recommend-line{font-size:var(--fs-b);line-height:2;margin:14px 0 18px;color:var(--fg)}.feng-inline-place{font:inherit;border:0;border-bottom:1px solid var(--line2);padding:2px 3px;background:transparent;color:var(--emerald);cursor:pointer}.feng-inline-place[aria-pressed=true]{color:var(--gold-ink);border-color:var(--gold-ink)}.feng-browse-title{font-family:var(--display);font-size:18px;color:var(--gold-ink);margin:22px 0 12px}.feng-region-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}.feng-region{min-width:0;border:1px solid var(--line);border-radius:9px;background:var(--field)}.feng-region>summary{display:flex;justify-content:space-between;gap:12px;padding:12px;font-size:var(--fs-b);color:var(--fg);cursor:pointer;list-style:none}.feng-region>summary::-webkit-details-marker{display:none}.feng-region>div{display:flex;flex-direction:column;padding:0 8px 8px;gap:3px;max-height:280px;overflow-y:auto}.feng-region-place{font:inherit;font-size:var(--fs-s);text-align:left;cursor:pointer;color:var(--fg);background:transparent;border:1px solid transparent;border-radius:7px;padding:9px 8px;min-height:44px;overflow-wrap:anywhere}.feng-region-place small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.feng-region-place[aria-pressed=true]{border-color:var(--emerald);background:color-mix(in srgb,var(--emerald) 8%,transparent)}.feng-geo-labels{pointer-events:none}.feng-label{fill:var(--muted);stroke:var(--bg);paint-order:stroke;stroke-linejoin:round;font-family:var(--body)}.feng-label.province{fill:var(--fg);font-weight:600}.feng-label.selected{fill:var(--gold);font-weight:600}.feng-label.place{fill:var(--fg)}@media all{.feng-region-list{grid-template-columns:repeat(2,minmax(0,1fr))}}


.feng-categories{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.feng-categories button{font:inherit;font-size:var(--fs-s);display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:52px;padding:10px 13px;color:var(--muted);background:var(--field);border:1px solid var(--line);border-radius:10px;cursor:pointer}.feng-categories button>span{display:flex;align-items:center;gap:7px}.feng-categories i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--category-color)}.feng-categories small{font-size:11px;color:var(--category-color);text-align:left}.feng-categories .recommended{border-color:var(--category-color);color:var(--fg);font-weight:600}.feng-categories button[aria-pressed=true]{background:color-mix(in srgb,var(--category-color) 13%,var(--field));box-shadow:inset 0 -3px 0 var(--category-color);color:var(--fg)}.feng-categories button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media all{.feng-categories{gap:6px}.feng-categories button{flex:1 0 42%;padding:10px}}

.feng-map .feng-pin circle{stroke:none!important;stroke-width:0!important}.feng-halo,.feng-dot{pointer-events:none}.feng-criteria{margin:8px 0 14px;color:var(--fg)}.feng-criteria>summary{display:inline-flex;align-items:center;cursor:pointer;list-style:none;min-height:36px;color:var(--emerald);font-size:var(--fs-s);gap:6px}.feng-criteria>summary::-webkit-details-marker{display:none}.feng-criteria>p{font-size:var(--fs-s);line-height:1.9;margin:8px 0 0;padding:14px;border:1px solid var(--line2);border-radius:10px;background:var(--field)}
.feng-place-heading{display:flex;align-items:baseline;gap:12px;margin:22px 0 10px}.feng-place-heading h3{flex:1;min-width:0;margin:0!important}.feng-place-heading .feng-criteria{flex:none;position:relative;margin:0}.feng-place-heading .feng-criteria>summary{font-size:11px;min-height:32px;white-space:nowrap;font-weight:400}.feng-place-heading .feng-criteria>p{position:absolute;right:0;top:100%;z-index:10;width:min(420px,calc(100vw - 64px));margin:4px 0 0;box-shadow:0 8px 24px var(--bg)}.action-rationale{margin:10px 0 18px}
.natal-toggle>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;list-style:none;color:var(--fg);font-weight:600;font-size:var(--fs-b)}
.natal-toggle>summary::-webkit-details-marker{display:none}
.natal-toggle>summary .chev{color:var(--emerald);transition:transform .25s}
.natal-toggle[open]>summary .chev{transform:rotate(180deg)}
.natal-toggle>#typeText{margin-top:16px}
.free-reading{margin-top:0}
.action-box{margin:12px 0 4px;border:1px solid var(--line);border-radius:12px;background:var(--field)}
.action-box>div{padding:14px 16px}.action-box>div+div{border-top:1px solid var(--line)}
.action-box small{display:block;font-size:11px;color:var(--muted)}.action-box b{display:block;font-family:var(--display);font-size:18px;margin:2px 0}.action-box span{display:block;font-size:13px;color:var(--muted);line-height:1.6}
.feng-categories{flex-wrap:nowrap;gap:8px}
.feng-categories button{flex:1 1 0;min-width:0;align-items:center;text-align:center;padding:10px 6px;word-break:keep-all}
.feng-categories button>span{justify-content:center;font-size:var(--fs-b);font-weight:600}
.feng-categories button>em{font-style:normal;font-size:12px;line-height:1.4;color:var(--muted)}
.feng-categories small{text-align:center}
@media all{.feng-categories{gap:4px}.feng-categories button{flex:1 1 0;padding:8px 2px}.feng-categories button>span{font-size:14px}.feng-categories button>em{font-size:10px}.feng-categories small{font-size:9px}}
.feng-criteria>summary{font-size:15px}
.reading details.feng-criteria{border:0;background:none;box-shadow:none;padding:0;border-radius:0}
.reading .feng-criteria>summary{padding:0;min-height:32px;min-width:32px;justify-content:center}
.feng-place-heading .feng-criteria>summary{font-size:17px}

/* Personal birth charts: all colors come from the existing theme. */
:root{--birth-aspect-soft:var(--emerald);--birth-aspect-hard:var(--rose);--birth-aspect-conj:var(--gold)}
.birth-atlas{margin-top:30px;display:grid;gap:34px;min-width:0;container-type:inline-size}
.birth-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.birth-nav a{padding:9px 3px;text-align:center;font-size:12px;color:var(--fg);border:1px solid var(--line);border-radius:8px;text-decoration:none}
.birth-nav a:hover,.birth-nav a:focus-visible{color:var(--emerald);border-color:var(--emerald)}
.birth-system{min-width:0;scroll-margin-top:24px;border-top:1px solid var(--line2);padding-top:20px}
.birth-system h4{font-family:var(--display);font-size:21px;margin:0 0 6px;color:var(--fg)}
.birth-system h4 small{font-family:var(--mono);font-size:11px;font-weight:400;color:var(--emerald);margin-right:10px}
.birth-note,.birth-caption{font-size:12px;line-height:1.7;color:var(--muted);margin:8px 0 14px;word-break:keep-all}
.birth-note a{color:var(--teal)}
.birth-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:20px;align-items:start}
.birth-figure{margin:0;min-width:0}
.birth-wheel{display:block;width:100%;height:auto;color:var(--fg)}
.birth-wheel text{fill:var(--fg);font-family:var(--body)}
.birth-wheel .bw-ring{fill:none;stroke:var(--line2)}
.birth-wheel .bw-guide{stroke:var(--line);fill:none}
.birth-wheel .bw-sign{font-size:20px;fill:var(--gold)}
.birth-wheel .bw-label{font-size:18px;fill:var(--emerald)}
.birth-wheel .bw-degree{font-family:var(--mono);font-size:10px;fill:var(--muted)}
.birth-wheel .bw-house{font-family:var(--mono);font-size:10px;fill:var(--muted)}
.birth-wheel .bw-core{font-family:var(--display);font-size:15px;fill:var(--fg)}
.birth-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.birth-table caption{text-align:left;color:var(--muted);font-size:12px;padding:0 0 8px}
.birth-table th,.birth-table td{border-bottom:1px solid var(--line);padding:9px 5px;text-align:left;vertical-align:top}
.birth-table thead th{color:var(--muted);font-size:11px;font-weight:500}
.birth-table tbody th{font-weight:500;color:var(--fg)}
.birth-table td{color:var(--muted)}
.birth-table .birth-value{color:var(--gold-ink);font-family:var(--mono)}
.birth-table small{display:block;color:var(--muted);font-size:10px}
.birth-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11px;color:var(--muted);margin-top:9px}
.birth-legend i{display:inline-block;width:14px;height:2px;margin:0 5px 3px 0;background:var(--birth-aspect-soft)}
.birth-legend .hard{background:var(--birth-aspect-hard)}
.birth-legend .conj{background:var(--birth-aspect-conj)}
.vedic-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(80px,auto));border-top:1px solid var(--line2);border-left:1px solid var(--line2);position:relative}
.vedic-cell{border-right:1px solid var(--line2);border-bottom:1px solid var(--line2);padding:7px 6px;min-width:0;background:var(--field)}
.vedic-cell.is-rising{box-shadow:inset 0 0 0 1px var(--emerald)}
.vedic-cell>small{display:block;font-size:10px;color:var(--muted)}
.vedic-cell>span{display:block;font-size:11px;color:var(--gold-ink);line-height:1.7;overflow-wrap:anywhere}
.vedic-cell .vedic-asc{color:var(--emerald);font-weight:600}
.vedic-center{grid-column:2/4;grid-row:2/4;border-right:1px solid var(--line2);border-bottom:1px solid var(--line2);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;gap:7px;min-width:0}
.vedic-center b{font-family:var(--display);font-size:19px;color:var(--gold-ink)}
.vedic-center span{font-size:11px;color:var(--muted)}
.birth-num-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}
.birth-num-card{border:1px solid var(--line);border-radius:10px;padding:14px 9px;text-align:center;min-width:0}
.birth-num-card small,.birth-num-card span{display:block;color:var(--muted);font-size:11px;line-height:1.7}
.birth-num-card b{display:block;font-family:var(--display);font-size:34px;color:var(--gold-ink);margin:4px 0}
.birth-digit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-width:300px;margin:0 auto}
.birth-digit-grid>div{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.birth-digit-grid small{font-size:10px;color:var(--muted)}
.birth-digit-grid b{font-family:var(--mono);font-size:19px;color:var(--emerald);overflow-wrap:anywhere;text-align:center}
.birth-digit-grid .empty b{color:var(--dim)}
.birth-letters{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0 16px}
.birth-letter{display:flex;flex-direction:column;align-items:center;min-width:27px;padding:4px;border:1px solid var(--line);border-radius:5px;font-family:var(--mono);font-size:12px}
.birth-letter small{font-size:10px;color:var(--muted)}
.birth-letter.vowel{color:var(--emerald);border-color:var(--line2)}
.birth-maya-summary{display:flex;align-items:center;gap:16px;margin:14px 0 18px;border-left:2px solid var(--emerald);padding-left:14px}
.birth-maya-summary b{display:block;font-family:var(--display);font-size:21px;color:var(--gold-ink)}
.birth-maya-summary span{font-size:12px;color:var(--muted)}
.maya-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:2px;font-family:var(--mono)}
.maya-grid caption{text-align:left;color:var(--muted);font:12px/1.7 var(--body);padding-bottom:9px}
.maya-grid th{font-family:var(--body);font-size:10px;font-weight:400;color:var(--muted);text-align:center}
.maya-grid .maya-row{width:76px;text-align:left;line-height:1.4;padding-right:4px;overflow-wrap:anywhere}
.maya-grid .maya-row small{display:block;font-size:9px;color:var(--dim)}
.maya-grid td{padding:5px 0 4px;text-align:center;border:1px solid var(--line);border-radius:3px;background:var(--field);color:var(--muted);font-size:10px;line-height:1.2}
.maya-grid .maya-match{border-color:var(--line2);color:var(--fg)}
.maya-grid .maya-selected{background:var(--gold);border-color:var(--gold-ink);color:var(--on-accent);box-shadow:0 0 0 2px var(--emerald)}
.maya-tone{display:block;width:30px;height:16px;flex:none;color:var(--emerald)}
.maya-grid .maya-tone{width:100%;height:10px;margin-bottom:3px;opacity:.7}
.maya-selected .maya-tone{color:var(--on-accent);opacity:1}
.birth-empty{border:1px dashed var(--line2);border-radius:9px;padding:20px;color:var(--muted);font-size:13px}
@media all{.birth-layout{grid-template-columns:minmax(0,1fr)}.birth-wheel{max-width:470px;margin:auto}.vedic-board{max-width:470px;width:100%;margin:auto}.birth-system h4{font-size:20px}}
@container(max-width:650px){.birth-layout{grid-template-columns:minmax(0,1fr)}.birth-wheel{max-width:470px;margin:auto}.vedic-board{max-width:470px;width:100%;margin:auto}}
@media(max-width:420px){.birth-nav a{font-size:10px}.birth-num-card{padding:11px 4px}.birth-num-card span{font-size:10px}.birth-num-card b{font-size:29px}.birth-table th,.birth-table td{padding:8px 3px}.maya-grid{border-spacing:1px}.maya-grid .maya-row{width:54px;font-size:9px}.maya-grid .maya-row small{font-size:8px}.maya-grid td{font-size:8px;padding:5px 0}.maya-grid .maya-tone{height:8px}.vedic-cell{padding:6px 4px}}


.feng-map-wrap{position:relative;max-width:460px;margin-inline:auto;width:100%}.feng-map-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.feng-overview{position:absolute;top:10px;right:10px;font:inherit;font-size:12px;min-height:36px;padding:7px 11px;border:1px solid var(--line2);border-radius:8px;background:var(--bg);color:var(--fg);cursor:pointer}.feng-browse{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}.feng-browse-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.feng-browse-head h4{margin:0;font-family:var(--display);font-size:18px;color:var(--gold-ink)}.feng-browse-head select{font:inherit;font-size:13px;min-height:40px;color:var(--fg);background:var(--field);border:1px solid var(--line2);border-radius:8px;padding:6px 30px 6px 12px}.feng-compact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.feng-compact-list button{position:relative;min-width:0;min-height:58px;padding:12px 22px 12px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left;font:inherit;font-size:14px;color:var(--fg);background:transparent;cursor:pointer}.feng-compact-list button>span:first-child{display:block;overflow-wrap:anywhere}.feng-compact-list small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.feng-compact-list button[aria-pressed=true]{color:var(--emerald);background:color-mix(in srgb,var(--emerald) 5%,transparent)}.feng-list-arrow{position:absolute;right:6px;top:18px;color:var(--muted)}.feng-more{display:block;margin:12px auto 0;padding:8px 20px;min-height:40px;font:inherit;font-size:13px;color:var(--emerald);background:transparent;border:0;cursor:pointer}.feng-situations{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0 10px}.feng-situations button{font:inherit;font-size:12px;min-height:36px;padding:7px 9px;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:999px;cursor:pointer}.feng-situations button[aria-pressed=true]{color:var(--emerald);border-color:var(--emerald);background:color-mix(in srgb,var(--emerald) 7%,transparent)}.feng-place .feng-situation-copy{font-size:var(--fs-b);line-height:1.85;color:var(--fg)}.feng-place .feng-visit-copy{font-size:var(--fs-s);line-height:1.8;color:var(--muted);margin-top:12px}.feng-halo{fill-opacity:.22}.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}@media all{.feng-map-layout{grid-template-columns:minmax(0,1fr)}.feng-map-wrap{max-width:360px}.feng-selected .feng-place{padding:16px}}@media(max-width:420px){.feng-compact-list{grid-template-columns:minmax(0,1fr)}}

.feng-situation-recommendations{font-size:var(--fs-b);line-height:2;margin:-8px 0 18px}.feng-situation-recommendations>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px}.feng-situation-recommendations>div>span{color:var(--fg)}.feng-map .feng-hit{fill:transparent!important;stroke:none!important}.feng-map .feng-dot{pointer-events:none;stroke:none!important;filter:none!important}
/* ---- 2026-11 결과 화면 개편: 결론 먼저, 짧은 문장, 여백과 구분선 ---- */
:root{--ink2:#d4cbbd;--fs-lead:clamp(25px,5.6vw,36px)}
body{font-size:16px;line-height:1.7;word-break:keep-all}
#sky{opacity:.16}
#oracle-dream img{opacity:.18}
#oracle-dream::after{opacity:.02}
@media all{#oracle-dream img{opacity:.09}}
body.fresh #result{display:none}
body:not(.fresh) .hero{min-height:0}
body:not(.fresh) .lede{display:none}
body:not(.fresh) h1{font-size:clamp(24px,4.4vw,32px);margin:10px 0 4px}
.wrap{gap:36px}
.result{max-width:760px;width:100%;scroll-margin-top:16px}
.res-top{padding:4px 0 28px}
.res-eyebrow{font-family:var(--body);font-size:15px;font-weight:600;color:var(--emerald);margin:0 0 12px;letter-spacing:.01em}
.res-lead{font-family:var(--display);font-weight:800;font-size:var(--fs-lead);line-height:1.42;margin:0;color:var(--fg);text-wrap:balance;max-width:20em}
.res-lead em{font-style:normal;color:var(--gold-ink)}
.res-intro .res-lead{font-size:clamp(20px,4.4vw,27px);line-height:1.6;max-width:none}
.res-h{font-family:var(--body);font-size:18px;font-weight:700;color:var(--fg);margin:36px 0 12px}
.res-intro .r-kw{margin-top:24px}
.res-intro .trait-table{max-width:520px}
.res-meta{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}
.res-meta li{font-size:13px;color:var(--ink2);border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:var(--field)}
.hl{list-style:none;margin:0;padding:0;border-top:1px solid var(--line2)}
.hl li{display:grid;grid-template-columns:112px minmax(0,1fr);column-gap:20px;row-gap:4px;padding:22px 0;border-bottom:1px solid var(--line)}
.hl-k{grid-row:1/4;font-size:14px;color:var(--muted);padding-top:3px}
.hl-v{font-size:21px;font-weight:700;color:var(--fg);line-height:1.4}
.hl-d{margin:0;font-size:16px;color:var(--ink2);line-height:1.6}
.hl-s{font-size:13px;color:var(--muted)}
.blk{padding-top:48px}
.blk-h{font-family:var(--body);font-size:22px;font-weight:700;line-height:1.4;margin:0 0 6px;color:var(--fg)}
.blk-p{margin:0 0 14px;font-size:15px;color:var(--muted)}
.bigchart{margin:0;padding:0;border:0}
.bc-legend{margin:0 0 6px}
.bc-pg{cursor:pointer;outline:none}
.bc-hit{fill:transparent}
.bc-pg:hover .bc-pt,.bc-pg:focus-visible .bc-pt,.bc-pg.on .bc-pt{stroke:var(--fg);stroke-width:2}
.bc-pick{margin:12px 0 0;padding:14px 16px;border-radius:12px;background:var(--field);border:1px solid var(--line);font-size:15px;color:var(--muted);min-height:52px;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.bc-pick b{font-weight:700}
.bc-pick span{color:var(--ink2)}
.fields{list-style:none;margin:20px 0 0;padding:0}
.fields li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}
.fields li:last-child{border-bottom:1px solid var(--line)}
.fields i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.fields div{display:flex;flex-direction:column;min-width:0}
.fields b{font-size:16px;font-weight:600;color:var(--fg)}
.fields div span{font-size:14px;color:var(--ink2)}
.fields em{font-style:normal;text-align:right;font-size:12px;color:var(--muted);line-height:1.4}
.fields em strong{display:block;font-family:var(--mono);font-size:14px;font-weight:500;color:var(--fg)}
.fine{margin:14px 0 0;font-size:13px;color:var(--muted)}
#result-gate{margin-top:8px}
.act .r-lead{font-family:var(--body);font-size:16px;font-weight:400;line-height:1.7;color:var(--ink2);margin:0 0 4px}
.act .action-box{margin-top:16px}
.act h3{font-family:var(--body);font-size:19px;font-weight:700;color:var(--fg)}
.act .feng-place-heading{margin-top:40px}
.act-list{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--line)}
.act-list li{padding:14px 0;border-bottom:1px solid var(--line)}
.act-list small{display:block;font-size:12px;color:var(--muted)}.act-list b{display:block;font-size:17px;font-weight:600;margin-top:3px;line-height:1.5}
.act-h{font-family:var(--body);font-size:17px;font-weight:700;margin:36px 0 8px}
.sit-list{list-style:none;margin:0;padding:0}
.sit-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding:12px 0;border-bottom:1px solid var(--line)}
.sit-list span{flex:0 0 9.5em;font-size:14px;color:var(--muted)}.sit-list b{font-size:16px;font-weight:600}.sit-list small{font-size:12px;color:var(--muted)}
@media all{.sit-list span{flex-basis:100%}}
.qa-list{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--line)}
.qa-list li{padding:16px 0;border-bottom:1px solid var(--line)}
.qa-q{display:block;font-size:13px;color:var(--muted)}.qa-a{display:block;font-size:18px;font-weight:700;line-height:1.5;margin:4px 0 2px;color:var(--fg)}
.qa-s{display:block;font-size:14px;line-height:1.6;color:var(--ink2)}
.qa-lead{color:var(--gold-ink)}
.r-list{list-style:none;margin:8px 0 12px;padding:0}.r-list li{padding:10px 0;border-bottom:1px solid var(--line);line-height:1.7}.r-list b{display:block;color:var(--fg)}
.sit-more{margin:12px 0 0;font-size:14px;color:var(--gold-ink)}
.rf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;margin:8px 0 22px}
@media all{.rf-grid{grid-template-columns:minmax(0,1fr)}}
.rf{margin:0;border-top:1px solid var(--line);padding-top:10px}
.rf figcaption{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px}.rf figcaption i{width:14px;height:3px;border-radius:2px}
.rf figcaption small{margin-left:auto;font-weight:400;font-size:12px;color:var(--muted)}
.rf svg{display:block;width:100%;height:auto}.rc-best{fill:var(--fg);font-weight:700}
.act .feng-place h4{font-family:var(--body);font-weight:700}
.report-cta{margin-top:56px}
.rc-info h3{font-family:var(--body);font-weight:700;font-size:clamp(20px,3vw,24px)}
#reportOpen{min-height:48px}
.disclaimer{margin:40px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:13px;line-height:1.7;color:var(--muted)}
.disclaimer b{color:var(--ink2)}
@media all{
  .hl li{grid-template-columns:minmax(0,1fr)}
  .hl-k{grid-row:auto;padding:0;font-size:13px}
  .hl-v{font-size:19px}
  .blk{padding-top:40px}
  .gate-card{padding:22px 16px}
}
/* 본문은 고딕, 명조는 짧은 제목·인상 문장에만 */
.r-prose p,.r-sp,.cread p,.sum-prose p,.r-ch p,.feng-place p{font-family:var(--body)}
.r-prose p,.r-sp{font-size:16px;line-height:1.85}
.cread p{font-size:15.5px;line-height:1.8}
.r-lead{font-family:var(--body);font-size:clamp(17px,2.6vw,19px);font-weight:500;line-height:1.75}
.r-page h3{font-family:var(--body);font-weight:700;font-size:19px}
.r-field>summary{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:600;color:var(--fg)}
.r-field>summary i{width:10px;height:10px;border-radius:50%;display:inline-block}
.r-field .cread{padding:0 0 8px}
.r-rules{max-width:none}
.r-fit table{min-width:0}.r-fit th,.r-fit td{padding:9px 6px}
.r-page h2+*{margin-top:18px}
.r-page .netctl{margin:12px 0 4px}
.r-page .chips button{min-height:40px}
.r-rail a{min-height:36px;display:inline-flex;align-items:center}
/* 입력 화면: 누르기 쉬운 크기, 모바일 확대 방지 */
.seg label{min-height:44px;display:flex;align-items:center;justify-content:center}
.f input,.f select,.psel select,.psearch input{min-height:44px}
.chk{min-height:36px}
.placebar button{min-height:40px}
.go button{min-height:48px}
.share-actions button,.share-dialog button{min-height:44px}
@media all{.f input,.f select,.psel select,.psearch input,.tz input{font-size:16px}}
:root{--kakao-bg:#fee500;--kakao-fg:#191919}
.hero-top .share-actions{gap:8px}
.hero-top .acct-login{background:var(--kakao-bg);color:var(--kakao-fg);border-color:var(--kakao-bg);font-size:13px;font-weight:600;padding:7px 12px;min-height:36px}
.acct{position:relative}
.acct summary{list-style:none;cursor:pointer;font-size:13px;border:1px solid var(--line2);border-radius:10px;padding:8px 12px;min-height:36px;color:var(--fg);background:var(--field)}
.acct summary::-webkit-details-marker{display:none}.acct summary::after{content:" ⌄";color:var(--muted)}
.acct-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:40;width:200px;display:grid;gap:6px;padding:10px;border:1px solid var(--line2);border-radius:12px;background:var(--bg);box-shadow:0 12px 30px rgba(0,0,0,.45)}
.acct-pop button{width:100%;text-align:left;font-size:14px;padding:9px 12px;min-height:40px;color:var(--fg)}
.acct-pop button:disabled{opacity:.45;cursor:default}
.save-opt{flex:1 1 260px;min-width:0;font-size:13px;color:var(--muted);line-height:1.6}
.save-guest{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.kakao-mini{font:inherit;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--kakao-bg);border-radius:8px;padding:7px 12px;min-height:36px;background:var(--kakao-bg);color:var(--kakao-fg)}
.go .save-opt button.kakao-mini{font-size:13px;font-weight:600;padding:7px 12px;min-height:36px;background:var(--kakao-bg);color:var(--kakao-fg);box-shadow:none;border-radius:8px}
.go .save-opt .account-privacy summary{font-size:12px}
.hero-top .share-actions{margin-left:auto}
.save-chk{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.save-chk input{flex:none;margin-top:4px;width:18px;height:18px;accent-color:var(--emerald)}
.save-chk b{display:block;color:var(--fg);font-size:14px}
.save-opt .account-note{margin:6px 0 0}.save-opt .account-privacy{margin:4px 0 0;font-size:12px}
.save-opt .account-privacy summary{min-height:32px;padding-block:6px}
.account-box{margin:26px 0 18px;padding:18px;border:1px solid var(--line2);border-radius:14px;background:var(--panel);max-width:760px}
.account-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.account-box button,#profileDeleteDialog button{min-height:44px;padding:10px 14px;font:inherit;border:1px solid var(--line2);border-radius:8px;background:var(--field);color:var(--fg);cursor:pointer}
.account-box .kakao-login{background:var(--kakao-bg);color:var(--kakao-fg);border-color:var(--kakao-bg);font-weight:600}
.account-box button:disabled,#profileDeleteDialog button:disabled{opacity:.5;cursor:default}
.account-note,.account-privacy{font-size:13px;color:var(--muted);margin:10px 0 0;overflow-wrap:anywhere}
.account-buttons{display:flex;flex-wrap:wrap;gap:8px}.account-consent{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--muted);margin:14px 0}.account-consent input{flex:none;margin-top:5px}
.account-privacy summary{cursor:pointer;min-height:36px;padding-block:8px}.account-privacy p{margin:6px 0;line-height:1.8}
#profileDeleteDialog{max-width:min(92vw,480px);padding:24px;background:var(--bg);color:var(--fg);border:1px solid var(--line2);border-radius:16px}#profileDeleteDialog::backdrop{background:rgba(0,0,0,.7)}#profileDeleteDialog h2{font-size:22px}#profileDeleteDialog p{color:var(--muted)}


/* 2026-11 탭·오늘 운세·그림 카드 */
.res-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:18px 0 6px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--field);position:sticky;top:8px;z-index:20;backdrop-filter:blur(8px)}
.res-tabs button{font:inherit;font-size:15px;font-weight:600;min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer}
.res-tabs button[aria-selected="true"]{background:var(--bg);color:var(--gold-ink);box-shadow:0 0 0 1px var(--line2)}
.res-tabs button:focus-visible{outline:2px solid var(--emerald);outline-offset:2px}
.tabp .blk-first{margin-top:18px;border-top:0;padding-top:0}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.today{display:grid;gap:22px}
.td-head{display:flex;align-items:center;gap:20px}
.td-ring{position:relative;flex:none;width:112px;height:112px}.td-ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:34px;font-weight:800;color:var(--fg)}.td-ring b small{font-size:13px;font-weight:500;color:var(--muted);margin-left:2px}
.td-ring b{grid-auto-flow:column;align-content:center;justify-content:center;align-items:baseline}
.td-date{font-size:13px;color:var(--muted)}.td-phrase{margin:4px 0 6px;font-family:var(--display);font-size:clamp(20px,4.6vw,26px);line-height:1.45;color:var(--fg)}.td-best{font-size:13px;color:var(--muted)}
.td-cats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px}
.td-cats li{display:grid;grid-template-columns:5.2em 1fr 2.4em;align-items:center;gap:10px;font-size:14px}.td-cats li>span{color:var(--ink2)}
.td-cats i{display:block;height:8px;border-radius:99px;background:var(--line);overflow:hidden}.td-cats em{display:block;height:100%;border-radius:99px}
.td-cats b{text-align:right;font-variant-numeric:tabular-nums}
@media all{.td-cats{grid-template-columns:1fr}}
.td-luck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.td-luck>div{border:1px solid var(--line);border-radius:14px;padding:14px 10px;text-align:center;background:var(--field);display:grid;gap:4px;justify-items:center}
.td-luck span{font-size:12px;color:var(--muted)}.td-luck b{font-size:16px;display:flex;align-items:center;gap:6px}
.sw{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid var(--line2)}
.ic{display:inline-grid;place-items:center;width:34px;height:34px;flex:none}
.ic svg{width:26px;height:26px;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.ic svg .f{fill:var(--gold);stroke:none}
.td-h{font-family:var(--body);font-size:16px;margin:4px 0 -8px;color:var(--fg)}
.td-sys{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.td-sys li{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.td-sys small{display:block;font-size:12px;color:var(--muted)}.td-sys b{display:block;font-size:15px;font-weight:600}.td-sys span{display:block;font-size:14px;color:var(--ink2)}
.week svg{display:block;width:100%;height:auto;margin-top:6px}
.wk rect{fill:var(--line2)}.wk.hi rect{fill:var(--gold)}.wk.now rect{stroke:var(--emerald);stroke-width:2}
.wk-v{fill:var(--fg);font-size:18px;font-weight:700}.wk-d{fill:var(--muted);font-size:17px}.wk.now .wk-d{fill:var(--emerald);font-weight:700}
.wk-sum{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.wk-sum li{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--field);display:grid;gap:3px}
.wk-sum span{font-size:12px;color:var(--muted)}.wk-sum b{font-size:16px}.wk-sum em{font-style:normal;font-size:13px;color:var(--ink2);line-height:1.5}
@media all{.wk-sum{grid-template-columns:1fr}}
.qa-cards{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media all{.qa-cards{grid-template-columns:1fr}.qa-card{grid-template-columns:88px 1fr;grid-template-rows:none}.qa-art{height:auto;border-bottom:0;border-right:1px solid var(--line)}.qa-art svg{width:72px;height:56px}.qa-body{padding:14px 14px 16px}}
.qa-card{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--field)}
.qa-art{height:110px;display:grid;place-items:center;background:radial-gradient(circle at 50% 60%,rgba(72,240,166,.14),transparent 70%),linear-gradient(180deg,rgba(242,196,90,.06),transparent);border-bottom:1px solid var(--line)}
.qa-art svg{width:150px;height:96px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.qa-art svg .g{stroke:var(--emerald)}.qa-art svg .f{fill:var(--gold);stroke:none}
.qa-body{padding:16px 18px 18px;display:grid;gap:4px;align-content:start}
.qa-card .qa-a{font-size:17px}
.sys-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.sys-chips i{font-style:normal;font-size:11px;padding:2px 7px;border-radius:99px;border:1px solid var(--line);color:var(--muted)}.sys-chips i.on{border-color:var(--emerald);color:var(--emerald)}
.r-fact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.r-fact>div{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--field);display:grid;gap:3px;align-content:start}
.r-fact small{font-size:12px;color:var(--muted)}.r-fact b{font-size:16px;color:var(--gold-ink)}.r-fact span{font-size:13px;color:var(--ink2);line-height:1.6}
@media all{.r-fact{grid-template-columns:1fr}}
.r-tbl td small{color:var(--muted)}

/* 2026-11 목차 순서·주제별 운세 */
.res-nav{position:sticky;top:8px;z-index:20;margin:18px 0 6px;display:grid;gap:6px}
.res-nav .res-tabs{position:static;margin:0}
.res-topics{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 2px 4px;-webkit-overflow-scrolling:touch}
.res-topics::-webkit-scrollbar{display:none}
.res-topics button{flex:none;font:inherit;font-size:14px;min-height:38px;padding:0 16px;border-radius:99px;border:1px solid var(--line);background:var(--bg);color:var(--ink2);cursor:pointer}
.res-topics button[aria-selected="true"]{border-color:var(--gold-ink);color:var(--gold-ink);background:var(--field)}
.res-topics button:focus-visible{outline:2px solid var(--emerald);outline-offset:2px}
.res-nav{padding:6px;margin-inline:-6px;border-radius:18px;background:rgba(255,253,250,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.res-topics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;overflow:visible;padding:0}
.res-topics button{padding:0 4px;font-size:13.5px;min-height:38px;white-space:nowrap}
@media not all{.res-nav{grid-template-columns:340px minmax(0,1fr);align-items:center;gap:10px}.res-topics button{font-size:14px;min-height:42px}}
.to-report{display:block;margin:30px 0 0;font:inherit;font-size:15px;color:var(--gold-ink);background:none;border:1px solid var(--line2);border-radius:12px;padding:12px 16px;min-height:44px;cursor:pointer;width:100%}
.tp-head{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}
.tp-art{height:120px;border:1px solid var(--line);border-radius:16px}
.tp-a{display:block;font-size:clamp(20px,4.6vw,24px);line-height:1.45;margin:4px 0;color:var(--fg)}
@media all{.tp-head{grid-template-columns:96px 1fr;gap:12px}.tp-art{height:88px}.tp-art svg{width:80px;height:60px}}
.tp-pts{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tp-pts li{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--field);display:grid;gap:4px;align-content:start}
.tp-pts small{font-size:12px;color:var(--muted)}.tp-pts b{font-size:15px;line-height:1.5}
@media all{.tp-pts{grid-template-columns:1fr}}
.buy-lock{position:relative;margin-top:22px;border:1px solid var(--line2);border-radius:18px;overflow:hidden}
.buy-fog{padding:22px;filter:blur(5px);opacity:.5;color:var(--ink2);letter-spacing:.1em;user-select:none}
.buy-card{position:absolute;inset:0;display:grid;align-content:center;justify-items:center;gap:8px;padding:20px;text-align:center;background:linear-gradient(180deg,rgba(6,12,10,.55),rgba(6,12,10,.92))}
.buy-card h4{margin:0;font-size:20px;color:var(--fg)}
.buy-card ul{list-style:none;margin:4px 0 6px;padding:0;display:grid;gap:4px;font-size:14px;color:var(--ink2)}.buy-card li::before{content:"";display:inline-block;width:.85em;height:.85em;margin-right:6px;vertical-align:-.05em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5 17.6 20.5 2.6 9.3h18.8L6.4 20.5z' fill='none' stroke='black' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5 17.6 20.5 2.6 9.3h18.8L6.4 20.5z' fill='none' stroke='black' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;color:var(--gold-ink)}
.buy-btn{font:inherit;font-weight:700;font-size:15px;min-height:46px;padding:0 22px;border:0;border-radius:12px;background:var(--gold);color:#1a1405;cursor:pointer}
.buy-msg{font-size:13px;color:var(--muted);min-height:1.4em}
.buy-lock{min-height:300px}
.act-lead{margin:6px 0 0;font-size:14px;color:var(--muted)}
.act-why{display:block;font-size:14px;color:var(--ink2);line-height:1.6;margin-top:4px}

/* Starlit watercolor: sample report artwork, shared embedded asset. */
:root{--report-watercolor:url("img/9decc284e2.jpg")}
.rc-book{aspect-ratio:auto;padding:0 0 20px;overflow:hidden;gap:5px;background:var(--panel)}
.rc-book::before{content:"";display:block;width:100%;height:165px;background-image:var(--report-watercolor);background-size:cover;background-position:68% center;border-bottom:1px solid var(--line2);margin-bottom:15px}
.rc-book .eyebrow{padding-inline:10px}.rc-book b{margin-top:4px}.rc-book small{padding-inline:12px}
.r-cover{padding:0 22px 30px;overflow:hidden}
.r-cover::before{content:"";display:block;margin:0 -22px 28px;height:260px;background-image:var(--report-watercolor);background-size:cover;background-position:center 58%;border-bottom:1px solid var(--line2)}
@media all{.rc-book{width:200px}.rc-book::before{height:150px}.r-cover::before{height:180px;background-position:65% center}}
.watercolor-welcome{height:160px;width:100%;margin:8px 0 24px;border-radius:16px;border:1px solid var(--line2);background-image:var(--report-watercolor);background-size:cover;background-position:center 56%}body:not(.fresh) .watercolor-welcome{display:none}@media all{.watercolor-welcome{height:125px;background-position:65% 55%}}
.topic-intro{max-width:640px;margin-bottom:28px}.topic-intro .eyebrow{color:var(--gold-ink)}.topic-intro h3{font-family:var(--display);font-size:clamp(23px,4.7vw,31px);line-height:1.5;margin:10px 0 12px;word-break:keep-all}.topic-intro p,.topic-context{color:var(--ink2);font-size:var(--fs-b);line-height:1.9;word-break:keep-all}.topic-context{font-size:var(--fs-s);margin:16px 0}.topic-outline{margin-top:34px;padding-top:26px;border-top:1px solid var(--line2)}.topic-outline-head .eyebrow{color:var(--gold-ink)}.topic-outline-head h4{font-size:21px;line-height:1.55;margin:8px 0}.topic-outline-head p{font-size:var(--fs-s);color:var(--muted)}.topic-outline ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.topic-outline li{display:flex;align-items:start;gap:12px;padding:20px 0;border-bottom:1px solid var(--line);min-width:0}.topic-number{font-family:var(--display);font-size:18px;color:var(--gold-ink);padding-top:3px}.topic-outline h5{font-size:var(--fs-b);line-height:1.6;margin:0 0 7px;color:var(--fg)}.topic-outline li p{font-size:var(--fs-s);line-height:1.85;margin:0;color:var(--ink2);word-break:keep-all}.topic-purchase{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 0 4px}.topic-purchase button{min-height:48px;font:inherit;font-weight:600;padding:12px 24px;background:var(--gold);color:var(--on-accent);border:0;border-radius:10px;cursor:pointer}.topic-purchase small{font-size:12px;line-height:1.7;color:var(--muted)}@media all{.topic-outline ol{grid-template-columns:minmax(0,1fr)}.res-topics{grid-template-columns:repeat(3,minmax(0,1fr))}.res-topics button{font-size:13px}.topic-intro{margin-bottom:22px}}

/* One visual language for overview and topic navigation. */
.res-nav{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--panel);border:1px solid var(--line);border-radius:14px;backdrop-filter:blur(10px)}
.res-nav .res-tabs,.res-nav .res-topics{display:contents}.res-nav [role=tab]{flex:1 0 auto;min-height:42px;padding:9px 14px;font:inherit;font-size:13px;line-height:1.4;white-space:nowrap;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink2);box-shadow:none;cursor:pointer}.res-nav [role=tab][aria-selected=true]{border-color:var(--gold-ink);background:var(--field);color:var(--gold-ink);box-shadow:none}.res-nav [role=tab]:focus-visible{outline:2px solid var(--emerald);outline-offset:2px}
.topic-answers{margin:25px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}.topic-answer{min-width:0;padding:22px 0;border-top:1px solid var(--line)}.topic-answer h4{font-size:16px;line-height:1.6;margin:0 0 10px;color:var(--gold-ink)}.topic-answer p{font-size:var(--fs-b);line-height:1.9;margin:0;color:var(--fg);word-break:keep-all}.topic-answer small{display:block;font-size:12px;line-height:1.8;color:var(--muted);margin-top:9px}.topic-answer-note{font-size:var(--fs-s);color:var(--muted);line-height:1.9;margin:20px 0}.chart-form{padding:22px;border:1px solid var(--line2);border-radius:14px;background:var(--panel);margin:24px 0}.chart-form h4{font-size:20px;margin:0 0 12px}.chart-form p{font-size:var(--fs-s);color:var(--ink2);line-height:1.85}.chart-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.chart-form label{display:flex;flex-direction:column;gap:7px;font-size:14px;color:var(--fg)}.chart-form input,.chart-form select,.chart-form textarea{box-sizing:border-box;width:100%;min-width:0;padding:11px;font:inherit;color:var(--fg);background:var(--field);border:1px solid var(--line2);border-radius:8px}.chart-form textarea{min-height:110px;resize:vertical}.chart-form button{font:inherit;cursor:pointer;padding:11px 18px;min-height:44px;border:1px solid var(--line2);border-radius:9px;background:var(--field);color:var(--emerald);margin-top:12px}.chart-form button[type=submit]{background:var(--gold);color:var(--on-accent);border:0}.chart-examples{display:flex;flex-wrap:wrap;gap:7px}.chart-examples button{font-size:12px;margin:0}.chart-feedback{line-height:1.9;color:var(--fg);margin-top:18px}.chart-feedback:empty{display:none}.chart-question{font-size:var(--fs-b);color:var(--gold-ink)}.chart-basis{font-size:12px;line-height:1.9;color:var(--muted)}@media all{.res-nav{gap:4px;top:4px;padding:5px}.res-nav [role=tab]{flex:1 0 calc(25% - 6px);padding:8px 4px;font-size:12px;min-height:40px}.topic-answers,.chart-fields{grid-template-columns:minmax(0,1fr)}.chart-form{padding:17px}.topic-answer{padding:19px 0}}
@media not all{.res-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.res-nav [role=tab]{padding-inline:6px}}
.topic-offer{margin-top:30px;padding:24px;border:1px solid var(--line2);border-radius:14px;background:var(--panel)}.topic-offer .eyebrow{color:var(--gold-ink)}.topic-offer h4{font-size:20px;line-height:1.6;margin:8px 0 16px}.topic-offer ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.topic-offer li{font-size:var(--fs-b);line-height:1.8;padding-left:16px;position:relative;color:var(--ink2)}.topic-offer li:before{content:"·";position:absolute;left:0;color:var(--gold-ink)}.topic-offer-action,.question-submit{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:24px;flex-wrap:wrap}.topic-offer-action strong,.question-submit strong{font-size:23px;color:var(--gold-ink)}.topic-offer-action button,.question-submit button{font:inherit;font-weight:600;border:0;border-radius:9px;background:var(--gold);color:var(--on-accent);padding:12px 20px;min-height:46px;cursor:pointer}.topic-offer .buy-msg{font-size:12px;line-height:1.8;color:var(--muted);margin:12px 0 0}.topic-offer .buy-msg:empty{display:none}.question-chat textarea{min-height:180px}.question-submit button{margin:0}.question-submit>span{font-size:14px;color:var(--ink2)}.question-submit strong{margin-left:8px}.comprehensive-price{display:flex;align-items:center;gap:12px;margin:20px 0 14px;color:var(--gold-ink)}.comprehensive-price strong{font-size:25px}.topic-answer p{line-height:1.8}@media all{.topic-offer{padding:18px}.topic-offer h4{font-size:18px}.comprehensive-price{justify-content:center}}
.spouse-preview{margin-top:32px;padding:25px;border:1px solid var(--line2);border-radius:16px;background:var(--panel)}.spouse-preview .eyebrow{color:var(--gold-ink)}.spouse-preview h4{font-size:23px;line-height:1.5;margin:9px 0 13px;word-break:keep-all}.spouse-kind{display:flex;gap:7px;margin-bottom:20px}.spouse-kind button{font:inherit;font-size:13px;min-height:38px;padding:7px 18px;border:1px solid var(--line2);border-radius:8px;background:var(--field);color:var(--ink2);cursor:pointer}.spouse-kind button[aria-pressed=true]{color:var(--gold-ink);border-color:var(--gold-ink)}.spouse-preview-content{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:28px;align-items:center}.spouse-preview figure{margin:0;min-width:0}.spouse-portrait{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:14px;border:1px solid var(--line2);background:var(--field)}.spouse-portrait img{display:block;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;filter:blur(3.5px);transform:scale(1.07);pointer-events:none;user-select:none}.spouse-portrait-label{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:30px 12px 18px;color:var(--fg);background:linear-gradient(transparent,var(--bg));font-size:13px;text-align:center}.spouse-portrait-label svg{fill:none;stroke:var(--gold);stroke-width:1.6}.spouse-preview figcaption{text-align:center;color:var(--muted);font-size:11px;margin-top:8px}.spouse-preview-copy h5{font-family:var(--display);font-size:24px;line-height:1.6;margin:0 0 14px;color:var(--gold-ink)}.spouse-preview-copy p{font-size:var(--fs-b);line-height:1.9;color:var(--ink2);word-break:keep-all}.spouse-preview-copy button{font:inherit;font-size:13px;min-height:44px;padding:10px 12px;color:var(--emerald);background:var(--field);border:1px solid var(--line2);border-radius:9px;cursor:pointer}@media all{.spouse-preview{padding:18px}.spouse-preview-content{grid-template-columns:minmax(0,1fr);gap:18px}.spouse-preview figure{width:min(100%,260px);margin-inline:auto}.spouse-preview h4{font-size:21px}.spouse-preview-copy{text-align:center}.spouse-preview-copy h5{font-size:21px}.spouse-preview-copy h5 br{display:none}}
.topic>.spouse-preview:first-child{margin-top:0}.spouse-preview h4{font-size:clamp(23px,3.4vw,30px);margin-bottom:25px;line-height:1.55;max-width:25ch}.spouse-preview-copy .spouse-promise{font-family:var(--display);font-size:22px;line-height:1.7;color:var(--gold-ink);margin:22px 0}.spouse-answer-heading{margin-top:32px;margin-bottom:0}.spouse-answer-heading h3{font-size:22px}.spouse-kind{display:none}@media all{.spouse-preview h4{font-size:23px}.spouse-preview-copy .spouse-promise{font-size:20px}}
.spouse-face-traits{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.spouse-face-traits span{font-size:12px;line-height:1.6;padding:5px 9px;border:1px solid var(--line2);border-radius:7px;color:var(--ink2);background:var(--field)}@media all{.spouse-face-traits{justify-content:center}}

html.boot #landing{visibility:hidden}body:not(.app-entered)>.wrap{display:none}body.app-entered #landing{display:none}#landing{position:relative;z-index:1;background:linear-gradient(125deg,var(--bg),transparent);min-height:100svh}body:not(.app-entered) #oracle-dream{opacity:.12}.landing-shell{max-width:1080px;margin:auto;padding:30px 28px 22px}.landing-brand{display:flex;gap:14px;align-items:center;color:var(--gold-ink)}.landing-brand span{font-size:10px;letter-spacing:.2em;color:var(--emerald)}.landing-brand b{font-size:15px}.landing-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:22px;margin:36px 0 20px}.landing-kicker{font-size:12px;color:var(--gold-ink);letter-spacing:.02em;margin:0 0 17px}.landing-copy h1{font-size:clamp(32px,4.4vw,48px)!important;font-family:var(--display);line-height:1.45;margin:0 0 20px!important;letter-spacing:-.04em}.landing-copy h1 em{font-style:normal;color:var(--emerald);text-shadow:none}.landing-lead{font-size:15px;line-height:1.95;color:var(--ink2);margin:0 0 20px;word-break:keep-all}.landing-systems{display:flex;gap:6px;flex-wrap:wrap}.landing-systems span{border:1px solid var(--line2);border-radius:7px;padding:5px 8px;font-size:11px;color:var(--muted)}.landing-art{margin:0;aspect-ratio:1.1;background-image:var(--landing-art);background-size:cover;background-position:center;border-radius:24px;border:1px solid var(--line2);box-shadow:0 20px 65px var(--bg)}.landing-highlights{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 25px;padding:18px 0;margin:0;list-style:none;border-top:1px solid var(--line);font-size:13px;color:var(--ink2)}.landing-highlights li:before{content:'';display:inline-block;width:.85em;height:.85em;vertical-align:-.05em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5 17.6 20.5 2.6 9.3h18.8L6.4 20.5z' fill='none' stroke='black' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5 17.6 20.5 2.6 9.3h18.8L6.4 20.5z' fill='none' stroke='black' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;color:var(--gold-ink);margin-right:7px}.landing-bottom{max-width:460px;margin:15px auto 0;text-align:center}.landing-bottom button{display:flex;justify-content:center;gap:35px;align-items:center;width:100%;min-height:54px;font:inherit;font-size:17px;font-weight:600;border:0;border-radius:14px;background:var(--gold);color:var(--on-accent);cursor:pointer}.landing-bottom p{font-size:12px;color:var(--muted);margin:10px 0}.landing-note{display:block;text-align:center;font-size:11px;line-height:1.8;color:var(--muted);margin-top:15px}.landing-back{font:inherit;font-size:13px;background:transparent;border:0;color:var(--muted);padding:6px 0;margin:0 0 15px;cursor:pointer}body.app-entered.fresh .watercolor-welcome{display:none}body.app-entered.fresh .hero h1{font-size:30px}body.app-entered.fresh .hero{min-height:0}.landing-mobile-break{display:none}@media all{.landing-shell{padding:22px 22px 18px}.landing-brand{justify-content:space-between;gap:8px}.landing-grid{grid-template-columns:minmax(0,1fr);gap:20px;margin:30px 0 16px}.landing-copy h1{font-size:32px!important;line-height:1.45}.landing-lead{font-size:14px}.landing-art{aspect-ratio:1.85;border-radius:16px}.landing-highlights{display:grid;justify-content:start;gap:8px;padding:14px 0;font-size:12px}.landing-bottom{margin-top:10px}.landing-systems span{font-size:10px;padding:4px 7px}.landing-note{margin-top:10px}.landing-mobile-break{display:block}}
:root{--landing-art:url("img/214420a4cc.jpg")}
.landing-copy h1{font-size:clamp(30px,3.5vw,40px)!important;line-height:1.45}.landing-declaration{font-family:var(--display);font-size:20px;line-height:1.7;color:var(--gold-ink);margin:22px 0}.landing-questions{font-size:15px;line-height:1.9;color:var(--fg);margin:20px 0}.landing-summary{margin-bottom:0}.landing-grid{margin-bottom:24px}.landing-bottom{margin-top:22px}@media all{.landing-copy h1{font-size:29px!important}.landing-declaration{font-size:19px}.landing-questions{font-size:14px}.landing-copy .landing-lead{font-size:13px}.landing-bottom{margin-top:15px}}
.res-nav{position:static;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px;margin:18px 0;border-radius:18px;background:var(--panel)}.res-nav .res-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:4px;border-radius:12px;background:var(--field)}.res-nav [role=tab]{min-width:0;white-space:normal;margin:0;font-size:14px;padding:12px 8px}.res-nav .res-tabs [aria-selected=true]{background:var(--panel);border-color:var(--gold-ink)}.topic-nav-title{margin:8px 0 0;font-size:16px;font-weight:700;color:var(--fg)}.res-nav .res-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.res-topics [role=tab]{text-align:left;border:1px solid var(--line);border-radius:13px;padding:17px 16px;background:var(--field)}.res-topics strong{display:block;font-size:17px;color:var(--fg);margin-bottom:7px}.res-topics small{display:block;font-size:13px;line-height:1.6;color:var(--ink2);font-weight:400}.res-topics [aria-selected=true]{border-color:var(--gold-ink)}.res-topics [aria-selected=true] strong{color:var(--gold-ink)}.romance-tabs{display:flex;gap:6px;flex-wrap:wrap}.romance-tabs[hidden]{display:none}.romance-tabs [role=tab]{flex:1;border:1px solid var(--line);background:var(--field);border-radius:9px}.ask-nav{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:6px}.ask-nav [role=tab]{text-align:right;font-size:13px}.ask-nav strong{color:var(--gold-ink);margin-left:8px}@media all{.res-nav{padding:12px;gap:10px;margin-inline:0}.res-nav [role=tab]{font-size:13px}.res-topics [role=tab]{padding:14px 11px}.res-topics strong{font-size:16px}.res-topics small{font-size:12px}}
.landing-headline{font-family:var(--display);font-size:clamp(34px,4.8vw,56px)!important;line-height:1.4!important;letter-spacing:-.04em;color:var(--gold-ink);margin:32px 0 0!important;word-break:keep-all}.landing-subtitle{font-family:var(--display);font-size:clamp(26px,3.2vw,36px);line-height:1.5;letter-spacing:-.035em;margin:0 0 10px;color:var(--fg)}.landing-subtitle em{font-style:normal;color:var(--emerald)}.landing-promise{font-size:19px;color:var(--fg);margin-bottom:22px}.landing-grid{margin-top:24px}@media all{.landing-headline{font-size:34px!important;margin-top:26px!important}.landing-subtitle{font-size:27px}.landing-copy .landing-promise{font-size:17px}.landing-grid{margin-top:24px}}

/* Restyle (hallmark, 2026-11): 배치는 그대로, 재질만 교체. 남색 밤 바탕, 명조 제목 + 고딕 본문 두 글꼴, 표면은 단색 단계, 번지는 글로우·유리·대문자 라벨·제목 속 색 단어 제거. 분야 색(--money 등)은 그대로. */
:root{
  --bg:oklch(15% .035 250);--panel:oklch(19% .038 250);--field:oklch(13% .03 250);
  --line:oklch(30% .04 250);--line2:oklch(42% .045 250);
  --fg:oklch(95% .012 85);--muted:oklch(74% .025 85);--dim:oklch(60% .025 85);
  --emerald:oklch(84% .13 165);
  --latin:var(--display);--mono:var(--body);
}
html,body{overflow-x:clip}
html.rep-lock,html.rep-lock body{overflow-x:clip}
*,*::before,*::after{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-shadow:none!important}
.eyebrow{font-family:var(--body)!important;letter-spacing:0!important;text-transform:none!important}
.landing-brand span{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:0;color:var(--fg)}
h1 em,.landing-copy h1 em,.landing-subtitle em,.r-cover h2 em{color:inherit}
.who-sum span,.fnote b,.cat h3 small,.lh small,.dchips span,.mini-x small,.birth-system h4 small{font-family:var(--body);letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}
details.askbox[open],.cat:hover,.pl.me,.pz.me,.chap.sel,.modetabs button[aria-pressed="true"],.hz button[aria-pressed="true"],.dchips .on,.decbars button[aria-pressed="true"],.cell:hover,.rc-book,.report-cta button,.go button,.orb{box-shadow:none}
.cell.sel{box-shadow:0 0 0 1px var(--fg)}
.dot i,.db s,.wb i.up,.wb i.down,.decbars button[aria-pressed="true"] i,.r-agree .dots i.on{box-shadow:none}
.pin{box-shadow:0 0 0 4px color-mix(in srgb,var(--emerald) 18%,transparent)}
.natalbox,.trend,.cat,details.panel,details.askbox,.res-tabs,.res-nav{background:var(--panel)}
.landing-art{border-radius:4px;border:0;box-shadow:0 24px 48px -24px oklch(6% .03 250/.8)}
.landing-bottom button,.go button,.report-cta button{border-radius:4px}
.landing-bottom button{justify-content:center}
.hz button{transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out}
.psel select:disabled{cursor:not-allowed;background:var(--field);color:var(--dim)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--emerald);outline-offset:2px}
button:active{transform:translateY(1px)}
.report-editorial{margin:28px 0}.report-editorial img{display:block;width:100%;height:auto;border-radius:12px}.report-editorial figcaption{font-size:13px;color:var(--muted);margin-top:9px}.r-answer{padding:18px 0;border-bottom:1px solid var(--line)}.r-yearflow{display:grid;gap:12px}.r-yearflow>div{display:grid;grid-template-columns:65px minmax(0,1fr) 50px;align-items:center;gap:12px}.r-yearflow meter{width:100%;height:18px}.r-basis-list small{color:var(--muted)}
.private-report-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}#accountIdLabel{overflow-wrap:anywhere;max-width:260px}#adminPageLink{display:block;padding:12px}#adminPageLink[hidden]{display:none}.report-purchase{box-sizing:border-box;width:calc(100% - 28px);max-width:520px;max-height:90svh;overflow:auto;background:var(--panel);color:var(--fg);border:1px solid var(--line);border-radius:18px;padding:26px}.report-purchase::backdrop{background:var(--bg);opacity:.85}.report-purchase h2{font-size:24px;margin:18px 0}.report-purchase ul{padding-left:20px;line-height:1.9}.report-purchase button{font:inherit;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--field);color:var(--fg);cursor:pointer;min-height:44px}.report-purchase #reportCheckout{width:100%;background:var(--gold);color:var(--on-accent);font-weight:700;margin-top:14px}.report-purchase #reportAccessRetry{width:100%;margin-top:8px}.purchase-close{float:right}.purchase-price{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.purchase-price strong{color:var(--gold-ink);font-size:22px}#purchaseStatus{font-size:14px;line-height:1.8;overflow-wrap:anywhere}.chapter-number{display:block;font-size:12px;color:var(--gold-ink);margin:8px 0}.chapter-action{padding:16px;border-left:2px solid var(--gold);background:var(--field);font-size:14px}.report-chapters{display:grid;gap:10px;margin-top:18px}.report-chapters a{color:var(--fg);font-size:15px;text-decoration:none;padding:12px;border-bottom:1px solid var(--line)}.r-answer p{margin:16px 0;line-height:1.95}.spouse-portrait img{filter:blur(5px);image-rendering:pixelated}.spouse-portrait-label{display:flex}.report-face{text-align:center;margin:28px auto}.report-face>img{width:min(100%,280px);height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:20px}.score-basis{padding:16px 0;border-bottom:1px solid var(--line)}.score-basis h4{margin:0 0 8px}.score-basis ul{padding-left:20px}.report-method p,.report-method li{overflow-wrap:anywhere}
.report-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}#reportPDF{font:inherit;font-size:14px;border:1px solid var(--line2);background:var(--gold);color:var(--on-accent);border-radius:999px;padding:8px 15px;cursor:pointer;margin-left:auto}#reportPDF:disabled{opacity:.6;cursor:wait}#reportPDF:focus-visible{outline:2px solid var(--fg);outline-offset:3px}#reportPDFStatus{font-size:12px;color:var(--muted);flex-basis:100%;text-align:right}#reportPDFStatus:empty{display:none}
/* 2026-11 UI 정리: 상단 브랜드 바, 금색 버튼 통일, 텍스트 대비 */
:root{--muted:#c6bba8;--dim:#a99d8c;--ink2:#ddd5c8;--fs-s:14px;--brandbar-h:48px}
.brandbar{position:fixed;top:0;left:0;right:0;z-index:9000;height:var(--brandbar-h);display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:.02em;color:var(--gold-ink);background:rgba(11,9,7,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(233,196,106,.22)}
.brandbar-mark{font-size:13px;opacity:.85}
body{padding-top:var(--brandbar-h)}
.report{top:var(--brandbar-h)}
.hero-top .eyebrow:empty{display:none}
.landing-headline{margin-top:20px!important}
.landing-copy .landing-one{font-size:17px!important;line-height:1.8;color:var(--fg);margin:0 0 22px}
.landing-copy .landing-questions{font-size:15px!important;color:var(--ink2);margin:16px 0 0}
.landing-bottom-top{max-width:none;margin:0!important}
.landing-bottom-top button{max-width:460px}
.landing-grid{margin-top:22px!important}
@media all{.landing-headline{font-size:32px!important}.landing-art{aspect-ratio:2.2}}
.go button,button.draw,.modetabs button[aria-pressed="true"],.r-open,.gate-card button{background:var(--gold);color:#1a1204;border:0;box-shadow:0 0 22px rgba(233,196,106,.32)}
.go button{width:100%;min-height:52px;font-size:16.5px;border-radius:4px}
.placebar button,.maptabs button[aria-pressed="true"],.share-actions button,.share-dialog button{color:var(--gold-ink)}
.placebar button{background:rgba(233,196,106,.08);border-color:rgba(233,196,106,.35)}
.maptabs button[aria-pressed="true"]{border-color:var(--gold-ink)}
.save-guest{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:10px;font-size:14px;color:var(--muted)}
.save-guest .kakao-mini{background:none!important;border:0!important;padding:0!important;color:var(--fg)!important;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px;box-shadow:none!important;min-height:0}
body.fresh #share-open{display:none}
.fnote,.conv{font-size:13px}
.fnote{color:var(--muted)}
.landing-note,.landing-bottom p,.report-cta .eyebrow,.r-badge,.ymark,.vedic-cell>span{font-size:12.5px}

.brandbar{cursor:default;user-select:none;-webkit-tap-highlight-color:transparent}.brandbar-brand{cursor:pointer}.brandbar *{-webkit-tap-highlight-color:transparent}
#whoName:not(.noname){color:var(--emerald)}
#resTitle{display:none}
.hero-top .share-icon{width:40px;min-height:40px!important;height:40px;padding:0!important;display:inline-grid;place-items:center;border-radius:50%!important;color:var(--gold-ink)}
body:not(.fresh) details.askbox:not([open]){display:none}
#whoName{cursor:pointer}#whoName:not(.noname){text-decoration:underline dotted 1.5px;text-underline-offset:.2em}
body:not(.fresh) .hero-in:has(#accountMember:not([hidden])) details.askbox>summary{display:none}
.hero-in{position:relative}.hero-in>.landing-back{position:absolute;left:0;top:2px;margin:0;min-height:40px}
.hero-top{justify-content:flex-end;min-height:40px;margin-bottom:6px}
.res-top{padding:0 0 20px!important}.res-nav{margin-top:0!important;top:calc(var(--brandbar-h) + 6px)!important}.hero{margin-bottom:-24px}.hero h1{margin-bottom:16px!important}
/* 2026-11 운명 리포트: 따뜻한 컨설팅 보고서 스타일(밝은 종이 바탕) */
#report{--bg:#f3ecdf;--panel:#fbf6ec;--field:#fffaf1;--line:rgba(168,123,54,.28);--line2:rgba(168,123,54,.55);--fg:#1c2a44;--ink:#25324c;--ink2:#3a4660;--muted:#6b6458;--dim:#8a8174;--gold:#a87b36;--gold2:#c9a25e;--navy:#1c2a44;--emerald:#2f6b57;--teal:#2c6f7e;--rose:#a5485f;--violet:#5d4f8e;--ember:#b4652f;--money:#a8771c;--love:#b04a6c;--work:#2b6c9a;--health:#3f7d50;--el0:#3f7d50;--el1:#b4492f;--el2:#a8771c;--el3:#6f7584;--el4:#2b6c9a;color-scheme:light;background:var(--bg);color:var(--fg)}
#report .report-bar{background:#070d18;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
#report .report-bar button{color:var(--fg);background:var(--field);border:1px solid var(--line2)}#report .report-bar #reportPDF{background:var(--gold);color:#1a1204;border:0;font-weight:600}
#report .report-in{max-width:860px;margin:0 auto}
#report .r-page,#report .r-cover{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 18px 40px -24px rgba(0,0,0,.7);padding:clamp(22px,5vw,48px);margin:0 0 22px}
#report h2,#report h3,#report h4{color:var(--fg)}
#report .r-page h3{font-family:var(--body);font-weight:700;font-size:18px;color:var(--fg);margin:30px 0 10px;padding-top:14px;border-top:1px solid var(--line)}
#report .r-page p,#report .r-page li,#report .r-page td{color:var(--ink)}
#report .eyebrow{color:var(--gold-ink);letter-spacing:.14em;font-size:12px;text-transform:uppercase}
#report table{border-collapse:collapse}#report th{color:var(--gold-ink);font-weight:600;border-bottom:1px solid var(--line2)}#report td{border-bottom:1px solid var(--line)}
#report .r-cover{display:grid;gap:22px;text-align:left;padding:0;overflow:hidden}
#report .r-cover-tx{padding:0 clamp(22px,5vw,48px) clamp(26px,5vw,44px)}
#report .r-cover h2{font-family:var(--display);font-size:clamp(30px,6vw,44px);line-height:1.3;margin:10px 0 12px;color:var(--fg)}
#report .r-cover h2 em{font-style:normal;color:var(--gold-ink)}
#report .r-cover p{color:var(--muted);margin:0}
.r-cover-meta{display:flex;flex-wrap:wrap;gap:10px 28px;margin:22px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.r-cover-meta div{display:flex;flex-direction:column;gap:2px}.r-cover-meta dt{font-size:12px;color:var(--dim)}.r-cover-meta dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}
.r-open-hd{margin-bottom:18px}
.r-open-hd .r-ph{display:flex;align-items:baseline;gap:12px;margin-bottom:6px}
.r-num{font-family:var(--body);font-weight:700;font-size:15px;color:var(--gold-ink);font-variant-numeric:tabular-nums}
#report .r-open-hd h2{font-family:var(--display);font-weight:800;font-size:clamp(24px,4.6vw,32px);line-height:1.3;letter-spacing:-.02em;margin:0;display:flex;flex-direction:column;gap:6px}
#report .r-open-hd h2 small{font-size:15px;font-weight:400;color:var(--muted);letter-spacing:0}
.r-take{display:flex;gap:12px;align-items:flex-start;margin:18px 0 0;padding:14px 16px;background:rgba(233,196,106,.08);border-left:3px solid var(--gold);border-radius:2px;font-size:16px;line-height:1.6;color:var(--fg)}
.r-take b{flex:none;font-size:12px;letter-spacing:.08em;color:#1a1204;background:var(--gold);border-radius:2px;padding:2px 7px;margin-top:3px}
.r-art{position:relative;margin:0 0 24px;border-radius:4px;overflow:hidden;background:linear-gradient(135deg,#101b2e,#0b1322);display:none}
.r-art.has,.show-slots .r-art{display:block}
.r-art-wide{aspect-ratio:3/2}.r-art-cover{aspect-ratio:3/2;margin:0;border-radius:0}
.r-art img{display:block;width:100%;height:100%;object-fit:cover}
.r-art figcaption{display:none}
.show-slots .r-art:not(.has){border:1.5px dashed rgba(233,196,106,.35);display:grid;place-items:center}
.show-slots .r-art:not(.has) figcaption{display:block;font-family:var(--mono);font-size:13px;color:var(--muted)}
#report .r-rail{background:var(--panel);border:1px solid var(--line);border-radius:6px}
#report .r-rail a{color:var(--ink2)}#report .r-rail a b{color:var(--gold-ink)}
#report .r-foot{color:var(--dim)}
#report .r-cover::before{margin:0;border-radius:0}#report .r-cover:has(.r-art.has)::before{display:none}.r-art.has+.report-editorial{display:none}
@media not all{.r-art-wide{aspect-ratio:21/9}.r-art-cover{aspect-ratio:21/9}}
@media print{.brandbar,.report-bar{display:none!important}#report{position:static}#report .r-page,#report .r-cover{box-shadow:none;break-before:page;border:0}}

/* 리포트 v2: 메인과 같은 남색·금색, 목차, 대시보드, 사주 카드 */
#report .r-page,#report .r-cover{background:linear-gradient(180deg,rgba(18,30,52,.92),rgba(11,19,34,.96));border:1px solid var(--line)}
#report .r-cover{min-height:min(88svh,760px);display:flex;flex-direction:column;justify-content:flex-end}
#report .r-cover::before{flex:1;height:auto;min-height:220px;margin:0}
#report .r-cover h2{color:var(--fg)}#report .r-cover h2 em{color:var(--gold-ink)}
#r-brief>.r-cover,#r-brief h3:has(+.report-chapters),#r-brief .report-chapters{display:none}
.r-toc-h{font-family:var(--display);font-size:30px;margin:6px 0 18px}
.r-toc-list{list-style:none;margin:0;padding:0;counter-reset:none}
.r-toc-list a{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;padding:13px 0;border-bottom:1px dashed var(--line);color:var(--fg);text-decoration:none}
.r-toc-list a:hover span{color:var(--gold-ink)}
.r-toc-list b{font-family:var(--display);color:var(--gold-ink);font-size:16px}
.r-toc-list span{font-weight:600;font-size:16px;display:flex;flex-direction:column;gap:2px}
.r-toc-list small{font-weight:400;font-size:13.5px;color:var(--muted)}
.r-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 0 6px}
.r-kpi div{border:1px solid var(--line2);border-radius:12px;padding:14px;background:rgba(233,196,106,.05);display:flex;flex-direction:column;gap:4px;min-width:0}
.r-kpi small{font-size:12.5px;color:var(--gold-ink)}.r-kpi b{font-size:17px;line-height:1.35;color:var(--fg);word-break:keep-all}.r-kpi span{font-size:13px;color:var(--muted);line-height:1.5}
@media all{.r-kpi{grid-template-columns:1fr}}
.r-bars{display:grid;gap:12px;margin:12px 0 4px}
.r-bar{display:grid;grid-template-columns:72px minmax(0,1fr) 34px;gap:4px 10px;align-items:center}
.r-bar-n{font-size:14px;color:var(--ink2)}.r-bar b{font-variant-numeric:tabular-nums;text-align:right}
.r-bar small{grid-column:2/4;font-size:12.5px;color:var(--muted)}
.r-bar-t{height:12px;border-radius:6px;background:rgba(255,255,255,.06);overflow:hidden}.r-bar-t i{display:block;height:100%;border-radius:6px;background:var(--bc)}
.r-bar-money{--bc:var(--money)}.r-bar-love{--bc:var(--love)}.r-bar-work{--bc:var(--work)}.r-bar-health{--bc:var(--health)}
.r-qa-tbl th{width:42%;text-align:left;font-weight:600;color:var(--ink2)!important;border-bottom:1px solid var(--line)!important;padding:10px 10px 10px 0;vertical-align:top;font-size:14px}
.r-qa-tbl td{padding:10px 0;font-size:14.5px;color:var(--fg)}
.r-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 24px}
.r-card{position:relative;border-radius:18px;padding:16px 16px 14px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border:1px solid color-mix(in srgb,var(--c) 40%,transparent);background:radial-gradient(120% 90% at 70% 10%,color-mix(in srgb,var(--c) 32%,transparent),transparent 70%),#0b1424}
.r-card small{font-size:13px;color:var(--ink2);font-weight:600}
.r-card b{font-family:var(--display);font-size:clamp(40px,10vw,56px);line-height:1;text-align:center;color:#fff;text-shadow:0 2px 16px color-mix(in srgb,var(--c) 60%,transparent);margin:8px 0}
.r-card span{font-size:12.5px;line-height:1.5;color:var(--ink);text-align:center;word-break:keep-all}

/* 인포그래픽 요약 */
.ig{margin:0 0 8px}
.ig-head{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border-radius:14px;background:linear-gradient(120deg,rgba(233,196,106,.18),rgba(233,196,106,.04));border:1px solid var(--line2);margin-bottom:12px}
.ig-head span{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink)}.ig-head b{font-family:var(--display);font-size:clamp(20px,4.6vw,26px);color:var(--fg)}
.ig-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.ig-kpi div{border:1px solid var(--line);border-radius:14px;padding:14px 10px;text-align:center;background:rgba(255,255,255,.02)}
.ig-kpi b{display:block;font-family:var(--display);font-size:clamp(26px,7vw,36px);color:var(--gold-ink);line-height:1.1;font-variant-numeric:tabular-nums}.ig-kpi b small{font-size:.5em;margin-left:2px;color:var(--ink2)}
.ig-kpi span{display:block;margin-top:6px;font-size:12.5px;line-height:1.45;color:var(--ink2);word-break:keep-all}
.ig-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ig-box{border:1px solid var(--line);border-radius:14px;padding:16px;background:rgba(255,255,255,.02);min-width:0;break-inside:avoid}
.ig-wide{grid-column:1/-1}
#report .ig-box h4{margin:0 0 12px;font-size:15px;color:var(--fg);text-align:center}
.ig-box>p{margin:12px 0 0;font-size:12.5px;color:var(--muted);text-align:center;line-height:1.5}
.ig-dn{display:flex;align-items:center;gap:14px;justify-content:center}
.ig-donut{width:min(130px,42%);flex:none}.ig-dn-b{font-family:var(--display);font-size:22px;font-weight:800;fill:var(--fg)}.ig-dn-s{font-size:9px;fill:var(--muted)}
.ig-lg{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:13px;color:var(--ink2)}.ig-lg li{display:flex;align-items:center;gap:6px}.ig-lg i{width:10px;height:10px;border-radius:3px}.ig-lg b{margin-left:auto;padding-left:10px;font-variant-numeric:tabular-nums}
.ig-line{width:100%;height:auto;display:block}.ig-line .g{stroke:rgba(255,255,255,.08)}.ig-line .ax{font-size:9px;fill:var(--muted)}.ig-line .l{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-linejoin:round}
.ig-line .p{fill:var(--bg);stroke:var(--gold);stroke-width:2}.ig-line .pk{fill:var(--gold)}.ig-line .pkt{font-size:10px;font-weight:700;fill:var(--gold)}
.ig-concl ol{margin:0;padding:0;list-style:none;display:grid;gap:8px}.ig-concl li{display:flex;gap:10px;font-size:14.5px;line-height:1.6;color:var(--ink)}
.ig-concl li b{flex:none;font-size:12px;color:#1a1204;background:var(--gold);border-radius:4px;padding:1px 7px;height:fit-content;margin-top:3px}
@media all{.ig-grid{grid-template-columns:1fr}.ig-kpi{gap:6px}.ig-kpi div{padding:12px 4px}}
/* 인쇄 = PDF: 화면 디자인 그대로 */
@page{size:A4;margin:10mm}
@media print{
 html,body{background:#070d18!important;padding:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
 html.rep-lock body>*:not(.wrap),html.rep-lock .wrap>*:not(#report){display:none!important}
 html.rep-lock .wrap{display:block!important;padding:0!important;max-width:none!important;margin:0!important}
 #report{position:static!important;inset:auto;overflow:visible!important;height:auto!important;top:0!important}
 #report .report-bar,#report .r-rail,.brandbar{display:none!important}
 #report .report-in{max-width:none;padding:0}
 #report .r-page,#report .r-cover{break-before:page;box-shadow:none;margin:0 0 8mm}
 #report .r-cover{break-before:auto;min-height:270mm}
 .r-card,.ig-box,.ig-kpi div,tr,figure,.r-take,.r-bar{break-inside:avoid}
 #report h2,#report h3,#report h4{break-after:avoid}
 #report details{display:block}#report details>*{display:block!important}
 .r-art:not(.has){display:none!important}
 #r-brief .r-page{break-before:auto}
 .r-toc-list a{padding:7px 0}.r-toc-h{margin-bottom:8px}
}

/* KPI 리포트 시트 (밝은 라벤더 종이 + 인디고, 손그림 강조) */
.ks{--ki:#3036a8;--ki2:#5b60d6;--ki3:#a9acef;--kbg:#f4f4f9;--kfg:#1d2050;background:var(--kbg);color:var(--kfg);border-radius:18px;padding:clamp(20px,5vw,40px) clamp(16px,4.5vw,36px) 22px;margin:0 0 20px;break-inside:avoid}
.ks-title{text-align:center;margin-bottom:18px}
#report .ks-title h3{margin:0;padding:0;border:0;font-family:var(--body);font-weight:800;font-size:clamp(22px,5.6vw,34px);letter-spacing:-.03em;color:var(--ki);line-height:1.25;word-break:keep-all}
.ks-arrow{display:block;width:92%;height:22px;margin:4px auto 0}.ks-arrow path{fill:none;stroke:var(--ki2);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
#report .ks-sub{margin:0 0 10px;font-size:17px;font-weight:800;color:var(--kfg)}
.ks-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px;padding-bottom:18px;border-bottom:1.5px solid var(--ki3)}
.ks-kpi>div{text-align:center;min-width:0}
.ks-num{position:relative;display:block;padding:14px 4px}
.ks-oval{position:absolute;inset:0;width:100%;height:100%}.ks-oval path{fill:none;stroke:var(--ki);stroke-width:2.2;stroke-linecap:round}
.ks-num b{position:relative;font-family:var(--body);font-weight:800;font-size:clamp(20px,5.4vw,30px);color:var(--ki);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ks-kpi small{display:block;margin-top:4px;font-size:12.5px;color:#4b4f7a;word-break:keep-all}
.ks-grid{display:grid;grid-template-columns:1fr 1fr;position:relative}
.ks-grid::before{content:"";position:absolute;left:50%;top:6px;bottom:6px;border-left:1.5px solid var(--ki3)}
.ks-grid::after{content:"";position:absolute;left:0;right:0;top:50%;border-top:1.5px solid var(--ki3)}
.ks-grid>section{padding:14px clamp(8px,2.4vw,18px) 18px;min-width:0}
#report .ks-grid h4{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:16px;font-weight:800;color:var(--kfg)}
.ks-grid h4 i{font-style:normal;color:var(--ki2);font-size:18px}
.ks-donut,.ks-line,.ks-bars{display:block;width:100%;height:auto}
.ks-donut .tr{fill:none;stroke:#d9dbf6;stroke-width:22}.ks-donut .vl{fill:none;stroke:var(--ki2);stroke-width:22}.ks-donut .in{fill:var(--ki)}
.ks-donut .big{font-family:var(--body);font-weight:800;font-size:28px;fill:#fff}.ks-donut .sm{font-size:11px;fill:#dfe0ff;font-weight:600}
.ks-donut .an{fill:none;stroke:#565a86;stroke-width:1.3;stroke-linecap:round}.ks-donut .lb{font-size:11px;fill:#4b4f7a}
.ks-line .ax{stroke:#9b9ec8;stroke-width:1}.ks-line .tk,.ks-bars .tk{font-size:10px;fill:#6b6f98}
.ks-line .ln{fill:none;stroke:var(--ki2);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}.ks-line .pk{fill:var(--ki)}.ks-line .nt{font-size:11px;font-weight:700;fill:var(--ki)}
.ks-bars .br{fill:var(--ki2)}.ks-bars .br.top{fill:var(--ki)}.ks-bars .bn{font-size:9.5px;fill:#4b4f7a}.ks-bars .bv{font-size:11px;font-weight:700;fill:var(--ki)}
.ks-bars .ic svg *{fill:none;stroke:#565a86;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ks-bars .bn{transform:translateY(22px)}
.ks-plan{border:1.5px solid var(--ki2);border-radius:14px;padding:12px 14px;display:grid;gap:10px}
#report .ks-plan p{margin:0;font-size:13.5px;line-height:1.6;color:var(--kfg)}.ks-plan b{color:var(--ki)}
.ks-foot{text-align:center;margin-top:10px;font-size:13px;font-weight:700;color:var(--ki)}
@media all{.ks-grid{grid-template-columns:1fr}.ks-grid::before,.ks-grid::after{display:none}.ks-grid>section{border-bottom:1.5px solid var(--ki3);padding-left:0;padding-right:0}.ks-grid>section:last-child{border-bottom:0}}

/* ===== 리포트 v3: 크림 종이 · 남색 명조 · 금색 액자 (사용자 예시 '주문은 어렵지 않습니다' 스타일) ===== */
#report,#report .report-in{font-family:var(--display)}
#report .report-bar{background:#f3ecdf;border-bottom:1px solid var(--line2)}
#report .report-bar button{background:#fffaf1;color:var(--navy);border:1px solid var(--line2);font-family:var(--display)}
#report .report-bar #reportPDF{background:var(--navy);color:#f1d9a6;border:0}
#report .r-rail{background:#f8f1e4;border:1px solid var(--line2);border-radius:4px}
#report .r-rail a{background:#fffaf1;border:1px solid var(--line);color:var(--navy)}#report .r-rail a b{color:var(--gold-ink)}
#report .r-page,#report .r-cover{position:relative;background:var(--panel);border:1px solid var(--line2);border-radius:6px;box-shadow:inset 0 0 0 6px var(--panel),inset 0 0 0 7px var(--line);padding:clamp(28px,6vw,56px) clamp(20px,5.5vw,52px)}
#report .r-page::after,#report .r-cover::after{content:"";position:absolute;left:50%;top:-9px;width:18px;height:18px;transform:translateX(-50%);background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 .9 8.8 10.2 1.1 4.6h9.8L3.2 10.2z' fill='none' stroke='%23a87b36' stroke-width='.9' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat;border-radius:50%}
#report .r-page p,#report .r-page li,#report .r-page td,#report .r-page dd{font-family:var(--display);color:var(--ink);font-size:16px;line-height:1.9}
#report .r-note,#report small{font-family:var(--body)}
#report .r-note{color:var(--muted)!important;font-size:13.5px!important;line-height:1.7!important}
#report h2,#report h3,#report h4{font-family:var(--display);color:var(--navy)}
#report .eyebrow{font-family:var(--display);letter-spacing:.12em;color:var(--gold-ink);text-transform:none}
/* 나침반 머리 */
.r-compass{display:flex;align-items:center;gap:12px;color:var(--gold-ink);margin:0 auto 18px;max-width:420px}
.r-compass span{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold2))}.r-compass span:last-child{transform:scaleX(-1)}
.r-compass svg{width:46px;height:46px;flex:none}
.r-gem{display:block;font-style:normal;text-align:center;color:var(--gold-ink);font-size:14px;margin:10px 0}
.r-open-hd{text-align:center;margin-bottom:26px}
.r-open-hd .r-ph{justify-content:center;margin:0 0 6px}
#report .r-num{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.14em;color:var(--gold-ink)}
#report .r-open-hd h2{display:block;font-family:var(--display);font-weight:800;font-size:clamp(28px,6.4vw,42px);line-height:1.3;letter-spacing:-.02em;color:var(--navy);margin:0}
#report .r-sub{margin:0;font-size:17px!important;color:var(--ink2)!important;word-break:keep-all}
/* 핵심 = 남색 배너 + 금색 이중 액자 */
#report .r-take{display:block;margin:24px auto 0;max-width:640px;padding:22px 24px;background:var(--navy);border:1px solid var(--gold2);border-radius:6px;box-shadow:inset 0 0 0 5px var(--navy),inset 0 0 0 6px rgba(201,162,94,.7);text-align:center}
#report .r-take span{font-family:var(--display);font-weight:700;font-size:clamp(18px,4.4vw,22px);line-height:1.6;color:#f5efe2;word-break:keep-all}
/* 소제목 = 금색 줄 + 오각형 별 */
#report .r-page h3{text-align:center;font-weight:800;font-size:clamp(20px,4.6vw,25px);margin:38px 0 14px;padding:26px 0 0;border:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 .9 8.8 10.2 1.1 4.6h9.8L3.2 10.2z' fill='none' stroke='%23a87b36' stroke-width='.9' stroke-linejoin='round'/%3E%3C/svg%3E") center top/12px no-repeat,linear-gradient(var(--gold2),var(--gold2)) left 5px/calc(50% - 16px) 1px no-repeat,linear-gradient(var(--gold2),var(--gold2)) right 5px/calc(50% - 16px) 1px no-repeat}
#report .r-page h4{font-weight:700;color:var(--navy)}
/* 표 = 점선 금색 */
#report table{font-family:var(--display)}#report th{color:var(--gold-ink)!important;font-weight:700;border-bottom:1px solid var(--line2)!important;background:transparent}
#report td{border-bottom:1px dotted var(--line2)!important;color:var(--ink)}
#report .r-tbl{border:1px solid var(--line2);border-radius:6px;background:var(--field);padding:4px 12px}
/* 박스류(사실 칸, 목록, 카드 등) = 금색 테두리 크림 카드 */
#report .r-fact>div,#report .rf-grid>*,#report .r-list li,#report .cs-block,#report .r-answer,#report .chapter-action,#report .feng-place,#report .birth-atlas>*{background:var(--field)!important;border:1px solid var(--line2)!important;border-radius:6px;color:var(--ink)}
#report .chips button,#report .feng-categories button{background:var(--field);border:1px solid var(--line2);color:var(--navy)}
#report .chips button[aria-pressed="true"]{background:var(--navy);color:#f1d9a6;border-color:var(--navy)}
#report svg text{fill:var(--ink2)}
/* 표지 */
#report .r-cover{text-align:center;justify-content:flex-start;padding-top:clamp(36px,8vw,64px)}
#report .r-cover::before{order:2;flex:none;height:clamp(200px,42vw,320px);margin:10px 0 0;border-radius:4px;border:1px solid var(--line2)}
#report .r-cover .r-art{order:2}
#report .r-cover-tx{order:1;padding:0 0 12px}
#report .r-cover .r-compass{order:0}
#report .r-cover h2{font-size:clamp(34px,7.4vw,52px);color:var(--navy)}#report .r-cover h2 em{color:var(--gold-ink)}
#report .r-cover-meta{justify-content:center;border-top:1px dotted var(--line2)}
/* 목차 */
#report .r-toc{text-align:center}#report .r-toc-h{font-size:clamp(30px,6.4vw,40px);margin:0}
#report .r-toc-list{text-align:left;max-width:620px;margin:18px auto 0;border-top:1px dotted var(--line2)}
#report .r-toc-list a{border-bottom:1px dotted var(--line2);padding:14px 4px;grid-template-columns:60px minmax(0,1fr)}
#report .r-toc-list b{font-size:17px;color:var(--gold-ink)}#report .r-toc-list span{font-family:var(--display);font-size:18px;color:var(--navy)}
#report .r-toc-list small{font-family:var(--body)}
/* 사주 글자 카드 = 원형 아이콘 액자 카드 */
#report .r-card{background:var(--field);border:1px solid var(--line2);box-shadow:inset 0 0 0 4px var(--field),inset 0 0 0 5px var(--line);border-radius:6px;align-items:center;text-align:center}
#report .r-card small{font-family:var(--display);color:var(--gold-ink);font-size:14px}
#report .r-card b{width:96px;height:96px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--gold2);color:var(--c);text-shadow:none;font-size:46px;background:#fff}
#report .r-card span{color:var(--ink);font-family:var(--display);font-size:14px}
#report .r-foot{font-family:var(--body);color:var(--dim)}
#report .report-editorial img{border-radius:4px;border:1px solid var(--line2)}
#report .r-card b.two{font-size:30px;letter-spacing:-.04em}
#report meter{accent-color:var(--gold-ink)}#report meter::-webkit-meter-optimum-value{background:var(--gold)}#report meter::-webkit-meter-bar{background:#ece2cf;border:0}#report .r-page h3,#report .r-page h3 *{font-family:var(--display)}
@media print{html,body{background:#f3ecdf!important}}
/* ===== 리포트 v3.1 타이포·여백 정리 =====
   글자: 제목·숫자 강조는 명조, 본문·표·라벨은 고딕(긴 글 가독성).
   크기: 본문 16 / 보조 14 / 라벨 12.5, 제목 34·24·18. 간격: 8px 단위(8·12·16·24·32·48). */
#report{--rs-1:8px;--rs-2:12px;--rs-3:16px;--rs-4:24px;--rs-5:32px;--rs-6:48px}
#report .report-in{max-width:780px;padding:0 16px 48px}
#report .r-page p,#report .r-page li,#report .r-page td,#report .r-page dd,#report .r-page dt,#report .r-page th,#report table{font-family:var(--body)}
#report .r-page p,#report .r-page li{font-size:16px;line-height:1.75;letter-spacing:-.005em;color:var(--ink);word-break:keep-all;overflow-wrap:anywhere;text-wrap:pretty}
#report .r-page p{margin:0 0 var(--rs-3)}
#report .r-page ul:not(.r-list):not(.r-toc-list),#report .r-page ol:not(.r-toc-list){margin:0 0 var(--rs-3);padding-left:1.15em}
#report .r-page ul:not(.r-list) li,#report .r-page ol li{margin:0 0 var(--rs-1);padding-left:2px}
#report .r-page li::marker{color:var(--gold-ink)}
#report strong,#report .r-page b{font-weight:600;color:var(--navy)}
#report h2,#report h3,#report h4,#report .r-sub,#report .r-take span{text-wrap:balance;word-break:keep-all}
/* 페이지 틀 */
#report .r-page,#report .r-cover{padding:var(--rs-6) clamp(20px,6vw,56px);margin:0 0 var(--rs-5)}
@media all{#report .r-page,#report .r-cover{padding:40px 20px 32px;box-shadow:inset 0 0 0 4px var(--panel),inset 0 0 0 5px var(--line)}}
/* 장 머리 */
.r-compass{margin-bottom:var(--rs-3)}.r-compass svg{width:40px;height:40px}
#report .r-open-hd{margin-bottom:var(--rs-5)}
#report .r-open-hd .r-ph{border:0;padding:0;margin-bottom:var(--rs-1)}
#report .r-num{font-size:13px;letter-spacing:.18em}
#report .r-open-hd h2{font-size:clamp(28px,6vw,38px);line-height:1.25}
#report .r-gem{margin:var(--rs-2) 0;font-size:12px}
#report .r-sub{font-family:var(--body);font-size:15px!important;line-height:1.6!important;color:var(--muted)!important;max-width:30em;margin:0 auto}
#report .r-take{margin-top:var(--rs-4);padding:20px 22px}
#report .r-take span{font-size:clamp(17px,4.2vw,20px);line-height:1.55}
/* 소제목 */
#report .r-page h3{font-size:clamp(20px,4.4vw,24px);line-height:1.35;margin:var(--rs-6) 0 var(--rs-3);padding-top:28px}
#report .r-page h3+p,#report .r-page h3+.r-note{margin-top:0}
#report .r-page h4{font-family:var(--display);font-size:18px;line-height:1.4;margin:var(--rs-5) 0 var(--rs-1)}
#report .r-page h4 span,#report .r-page h4 small{font-family:var(--body);font-weight:400}
#report .r-note{font-size:13.5px!important;line-height:1.65!important;margin:var(--rs-1) 0 var(--rs-3)!important}
/* 카드·목록 */
#report .r-list{display:grid;gap:var(--rs-2);margin:var(--rs-3) 0}
#report .r-list li{padding:var(--rs-3) 18px;border-bottom:1px solid var(--line2)!important;font-size:15px;line-height:1.7}
#report .r-list li b{display:block;font-family:var(--display);font-size:16px;color:var(--gold-ink);margin-bottom:4px}
#report .r-fact{display:grid;gap:var(--rs-2);margin:var(--rs-3) 0}
#report .r-fact>div{padding:var(--rs-3) 18px;display:flex;flex-direction:column;gap:4px}
#report .r-fact small{font-size:12.5px;letter-spacing:.04em;color:var(--muted)}
#report .r-fact b{font-family:var(--display);font-size:18px;line-height:1.4;color:var(--gold-ink)}
#report .r-fact span{font-family:var(--body);font-size:14px;line-height:1.6;color:var(--ink2)}
/* 표 */
#report .r-tbl{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0;margin:var(--rs-3) 0}
#report .r-tbl table,#report .r-page table{width:100%;border-collapse:collapse;font-size:14.5px}
#report th,#report td{padding:11px 12px;text-align:left;vertical-align:top;line-height:1.5}
#report th{font-family:var(--body);font-size:12.5px;letter-spacing:.04em;white-space:nowrap}
#report td.num,#report td:has(>.num){font-variant-numeric:tabular-nums;white-space:nowrap}
#report tr:last-child td{border-bottom:0!important}
/* 목차·표지 */
#report .r-toc-list a{padding:var(--rs-3) 4px;align-items:baseline}
#report .r-toc-list span{font-size:17px;gap:4px}#report .r-toc-list small{font-size:13.5px;line-height:1.5}
#report .r-cover-meta{gap:var(--rs-2) var(--rs-5);margin-top:var(--rs-4);padding-top:var(--rs-3)}
#report .r-cover-meta dt{font-family:var(--body);font-size:12.5px;color:var(--muted)}#report .r-cover-meta dd{font-family:var(--display);font-size:16px}
#report .r-cover p{font-family:var(--body);font-size:15px;line-height:1.6}
/* 사주 카드 */
#report .r-cards{gap:var(--rs-2);margin-bottom:var(--rs-5)}
#report .r-card{padding:var(--rs-4) var(--rs-2) 20px;gap:var(--rs-2);min-height:0}
#report .r-card small{font-size:13px;line-height:1.4}
#report .r-card b{width:84px;height:84px;font-size:40px;margin:0}
#report .r-card b.two{font-size:26px}
#report .r-card span{font-family:var(--body);font-size:13px;line-height:1.5;color:var(--ink2)}
/* 상단 막대(버튼·장 이동) 높이 줄이기 */
#report .report-bar{padding:8px 16px;gap:8px}
#report .report-bar button{min-height:38px;padding:6px 14px;font-size:14px}
#report .r-rail{top:calc(54px + env(safe-area-inset-top,0px));margin:12px 0 var(--rs-4);padding:6px;gap:6px}
#report .r-rail a{min-height:32px;padding:4px 12px;font-family:var(--body);font-size:13px}
#report #reportPDFStatus{font-family:var(--body)}
#report .report-editorial{margin:0 0 var(--rs-4)}
#r-brief .r-page>h2{text-align:center;font-family:var(--display);font-weight:800;font-size:clamp(24px,5vw,30px);margin:0 0 var(--rs-4)}
#report .r-page div+p,#report .r-page svg+p{margin-top:var(--rs-3)}
@media all{#report th,#report td{padding:9px 8px;font-size:13.5px}#report th{font-size:12px}}
@media print{#report .r-page p,#report .r-page li{font-size:11pt;line-height:1.7}#report .r-page,#report .r-cover{padding:14mm 14mm}}

/* 안쪽 박스 선 제거: 페이지 액자만 남기고, 안쪽 상자는 선 없이 옅은 바탕·여백으로 구분 */
#report .r-answer,#report .r-list li,#report .cs-block,#report .feng-place,#report .birth-atlas>*,#report .rf-grid>*{border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0;padding-left:0;padding-right:0}
#report .r-answer{margin:0 0 var(--rs-5)}#report .r-answer+.r-answer{padding-top:var(--rs-2)}
#report .r-list{gap:var(--rs-4)}#report .r-list li{padding-top:0;padding-bottom:0}
#report .r-fact>div,#report .chapter-action,#report .r-card{border:0!important;box-shadow:none!important;background:#f4ebdb!important;border-radius:10px}
#report .chapter-action{padding:var(--rs-3) 18px}
#report .r-tbl{border:0;background:transparent}
#report .r-rail,#report .r-rail a{border-color:transparent}
#report .report-editorial img{border:0}
/* 삼성 인터넷 다크 모드: 강제 색 변환 대신 같은 디자인의 남색 판 */
/* 삼성 인터넷 다크 모드: prefers-color-scheme 규칙이 있으면 삼성 인터넷이 강제 어둡게 변환을 하지 않는다 → 직접 만든 남색 판만 보인다 */
/* 리포트 남색 판(html.rd) — 상단바 ☀/☾ 버튼으로 전환. 삼성 인터넷은 prefers-color-scheme 규칙이 있으면 강제 다크 변환을 하지 않는다. */
@media (prefers-color-scheme: dark){html.sbx{color-scheme:dark}}
html.rd #report{--bg:#121a29;--panel:#182134;--field:#1d273b;--line:rgba(201,162,94,.26);--line2:rgba(201,162,94,.5);--fg:#f1eadb;--ink:#e6decf;--ink2:#d4c9b6;--muted:#b3a893;--dim:#958b78;--gold:#d2ad6a;--gold2:#c9a25e;--money:#e0b45a;--love:#e88aa8;--work:#79b6e0;--health:#7cc493;--el0:#7cc493;--el1:#e8846b;--el2:#e0b45a;--el3:#c4c8d2;--el4:#79b6e0;color-scheme:dark}
html.rd #report h2,html.rd #report h3,html.rd #report h4,html.rd #report strong,html.rd #report .r-page b,html.rd #report .r-toc-list span,html.rd #report .r-cover h2,html.rd #report .r-open-hd h2{color:var(--fg)}
html.rd #report .report-bar{background:#121a29}html.rd #report .report-bar button{background:#1d273b;color:var(--fg)}
html.rd #report .report-bar #reportPDF{background:#d2ad6a;color:#121a29}
html.rd #report .r-take{background:#0c1220}
html.rd #report .r-fact>div,html.rd #report .chapter-action,html.rd #report .r-card{background:#1f2a40!important}
html.rd #report .r-card b{background:#121a29}
html.rd #report .r-rail,html.rd #report .r-rail a{background:#1d273b;color:var(--fg)}
html.rd #report meter::-webkit-meter-bar{background:#2a3550}
@media print{html.rd.rep-lock,html.rd.rep-lock body{background:#121a29!important}}
.theme-toggle{position:absolute;right:max(10px,env(safe-area-inset-right));top:calc(50% - 17px);transform:none!important;width:34px;height:34px;padding:0;border-radius:50%;border:1px solid rgba(233,196,106,.35);background:transparent;color:var(--gold-ink);font-size:16px;line-height:1;display:grid;place-items:center;cursor:pointer}
.theme-toggle:hover{background:rgba(233,196,106,.1)}.theme-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
#report .report-bar button{min-height:32px!important;padding-top:3px!important;padding-bottom:3px!important;line-height:1.3}
#report .report-bar{padding-top:6px;padding-bottom:6px}
#report .report-bar>button{white-space:nowrap}
@media(max-width:420px){#report .report-bar{flex-wrap:nowrap;gap:6px}#report .report-bar button{font-size:13px!important}}
.sb-note{max-width:748px;margin:12px max(16px,calc((100% - 748px)/2)) 0;padding:10px 14px;border-radius:8px;background:rgba(168,123,54,.12);color:var(--ink2,#3a4660);font-family:var(--body);font-size:13px;line-height:1.6}.sb-note b{color:var(--gold,#a87b36);margin-right:6px}@media print{.sb-note{display:none!important}}

/* 2026-11-04: 상단 한 줄 제목, 처음으로 버튼 제거, 메뉴 위로 */
.hero-top{flex-wrap:nowrap!important;justify-content:space-between!important;margin-bottom:0!important}
.hero-top .hero-title{margin:0!important;font-size:clamp(14px,4vw,20px)!important;font-weight:700;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.hero-top .hero-title em{font-style:normal}
.hero-top .share-actions{margin-left:auto!important}
.hero{min-height:0!important;margin-bottom:0!important}
body:not(.fresh) .hero{min-height:0}
.res-top{display:none!important}
.result{margin-top:0!important}
.wrap{padding-top:0!important}

/* 2026-11-04b: 상단 아이콘 바 */
.hero-top{justify-content:flex-end!important;margin:20px 0 28px!important;min-height:44px}
.hero-top .share-actions{display:flex;align-items:center;gap:10px}
.top-icon{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;display:inline-grid!important;place-items:center;border-radius:50%!important;border:1px solid var(--line2)!important;background:var(--field)!important;color:var(--gold-ink)!important;cursor:pointer;list-style:none}
.top-icon::after{content:none!important}.top-icon::-webkit-details-marker{display:none}
.top-icon:hover,.top-icon:focus-visible,.acct[open] .top-icon{border-color:var(--gold-ink)!important}
a.top-icon[hidden]{display:none!important}
.hero-top .acct-login{min-height:44px!important;font-size:15px!important;padding:8px 16px!important}
.acct{position:relative}
.acct-pop{width:220px;padding:12px}
.acct-hello{margin:2px 4px 0;font-size:16px;font-weight:700;color:var(--fg)}
.acct-pop .fine{margin:0 4px 6px;font-size:12px}
.acct-pop button{font-size:15px!important;min-height:44px}

/* 2026-11-04c: 상단 고정 바에 아이콘, 테마 버튼은 리포트에만 */
.bar-actions{position:absolute;right:max(10px,env(safe-area-inset-right));top:0;bottom:0;display:flex;align-items:center;gap:8px;margin:0;font-family:var(--body);font-weight:400;letter-spacing:0}
.bar-actions .top-icon{width:36px!important;height:36px!important;min-height:36px!important}
.bar-actions .top-icon svg{width:18px;height:18px}
.bar-actions .acct-login{min-height:34px!important;font-size:13px!important;padding:6px 12px!important;border-radius:999px;background:var(--kakao-bg);color:var(--kakao-fg);border:0;font-weight:600;white-space:nowrap}
.bar-actions .acct-pop{top:calc(100% + 10px)}
.report-bar .theme-toggle{position:static!important;flex:none}
.report-bar #reportPDF{margin-left:0}
.report-bar #reportClose{margin-right:auto}
.hero{padding-top:12px!important}
.brandbar{justify-content:flex-start!important;padding-left:16px}
body:not(.fresh) .hero{padding-top:0!important;margin-bottom:-20px!important}

/* 2026-11-04d: PC에서도 모바일 화면 폭(480px)으로 */
@media screen{
:root{--app-w:480px}
html{background:var(--bg)}
.wrap,#landing,.landing-shell{max-width:var(--app-w)!important;margin-left:auto!important;margin-right:auto!important}
.brandbar,.report{left:0!important;right:0!important;margin-inline:auto!important;max-width:var(--app-w)}
.report{width:100%}
@media(min-width:481px){.wrap,#landing{box-shadow:0 0 0 1px var(--line),0 0 60px rgba(0,0,0,.5)}body{min-height:100svh}}
}

/* 2026-11-05: 오각형 별 */
.pstar{width:1em;height:1em;display:inline-block;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.brandbar-mark{color:#62f4ff;opacity:1!important;font-size:18px!important;display:inline-flex;filter:drop-shadow(0 0 3px rgba(98,244,255,.9)) drop-shadow(0 0 8px rgba(98,244,255,.55))}
.r-gem .pstar{width:16px;height:16px}

/* 2026-11-05b */
.brandbar{justify-content:center!important;padding-left:0!important}
.topic-fold{margin-top:6px;border-top:1px solid var(--line)}
.topic-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;min-height:48px;margin:0!important;padding:4px 2px}
.topic-fold>summary::-webkit-details-marker{display:none}
.topic-fold>summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg);margin:-4px 6px 0 0;transition:transform .2s}
.topic-fold[open]>summary::after{transform:rotate(-135deg);margin-top:4px}
.topic-fold-in{display:grid;gap:10px;padding-bottom:4px}
.acct-pop .acct-item{display:block;width:100%;box-sizing:border-box;padding:11px 12px!important;min-height:44px;border-radius:10px;border:1px solid var(--line2);color:var(--gold-ink);font-size:15px;text-decoration:none}
.acct-pop .acct-item[hidden]{display:none}
.res-tabs button{font-size:16px!important;font-weight:500!important;letter-spacing:-.01em;min-height:48px!important;color:var(--muted)!important}
.res-tabs button[aria-selected=true]{font-weight:700!important;color:var(--gold-ink)!important}
.brandbar{font-size:17px!important}@media(max-width:440px){.brandbar{justify-content:flex-start!important;padding-left:16px!important}}

/* 2026-11-05 리포트 v3: 정보 중심 편집 레이아웃(장식 그림 없음, 인연 일러스트는 작은 좌측 사진 + 우측 해설) */
#report .rv3-cover{padding:var(--rs-5) var(--rs-4)!important;min-height:0!important;text-align:center}
#report .rv3-cover::before,#report .rv3-cover::after{display:none!important}
#report .rv3-cover h2{font-size:clamp(26px,6vw,34px);line-height:1.35;margin:var(--rs-2) 0}
#report .rv3-cover p{color:var(--ink2);font-size:14px;margin:0 0 var(--rs-3)}
#report .rv3-ch{padding:var(--rs-5) var(--rs-4)}
#report .rv3-hd{margin:0 0 var(--rs-3);padding-bottom:var(--rs-2);border-bottom:1px solid var(--line2)}
#report .rv3-no{display:block;font-size:12px;letter-spacing:.14em;color:var(--gold-ink);font-weight:700;margin-bottom:6px}
#report .rv3-hd h2{margin:0;font-size:clamp(21px,4.8vw,26px);line-height:1.35;text-align:left}
#report .rv3-lead{font-family:var(--display,serif);font-size:18px;line-height:1.6;font-weight:700;color:var(--navy,var(--fg));margin:0 0 var(--rs-2)}
#report .rv3-basis{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 var(--rs-3);padding:0}
#report .rv3-basis li{font-size:12.5px;line-height:1.5;padding:3px 9px;border-radius:999px;background:rgba(168,123,54,.12);color:var(--ink2);border:0}
#report .rv3-ch p{font-size:16px;line-height:1.75;margin:0 0 var(--rs-2);word-break:keep-all;overflow-wrap:anywhere}
#report .rv3-tag{display:inline-block;font-size:12px;font-weight:700;color:var(--gold-ink);margin-right:6px;letter-spacing:.02em}
#report .rv3-act{margin-top:var(--rs-3)!important;padding:var(--rs-2) var(--rs-3);background:#f4ebdb;border-radius:6px}
#report .rv3-act b{display:block;font-size:12.5px;color:var(--gold-ink);margin-bottom:2px}
#report .rv3-sum{margin:0 0 var(--rs-4);padding-left:1.3em}
#report .rv3-sum li{font-size:16px;line-height:1.7;margin-bottom:var(--rs-1);word-break:keep-all}
#report .rv3-tw{overflow-x:auto;margin:var(--rs-3) 0;-webkit-overflow-scrolling:touch}
#report .rv3-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}
#report .rv3-table caption{text-align:left;font-size:12.5px;font-weight:700;color:var(--muted);padding-bottom:6px}
#report .rv3-table th,#report .rv3-table td{padding:7px 8px;border-bottom:1px dashed var(--line2);text-align:left;vertical-align:top;word-break:keep-all}
#report .rv3-table thead th{font-size:12.5px;color:var(--muted);border-bottom:1px solid var(--line2)}
#report .rv3-table tbody th{font-weight:700;white-space:nowrap}
#report .rv3-bars{margin:var(--rs-3) 0;display:grid;gap:6px}
#report .rv3-bars figcaption{font-size:12.5px;font-weight:700;color:var(--muted)}
#report .rv3-bars div{display:grid;grid-template-columns:64px 1fr 24px;align-items:center;gap:8px;font-size:13px}
#report .rv3-bars i{height:8px;border-radius:4px;background:rgba(168,123,54,.15);overflow:hidden}
#report .rv3-bars b{display:block;height:100%;background:var(--gold)}
#report .rv3-bars em{font-style:normal;text-align:right}
#report .rv3-toc h3{font-size:16px;margin:var(--rs-4) 0 var(--rs-2);text-align:left;padding:0;background:none}
#report .rv3-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
#report .rv3-toc a{display:flex;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line);color:var(--fg);text-decoration:none;font-size:15px}
#report .rv3-toc a b{color:var(--gold-ink);min-width:24px}
#report .rv3-profile{display:grid;grid-template-columns:minmax(96px,28%) 1fr;gap:var(--rs-3);align-items:start;margin:var(--rs-2) 0}
#report .rv3-face{margin:0;max-width:170px}
#report .rv3-face img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 30%;border:1px solid var(--line2);border-radius:4px}
#report .rv3-face figcaption{font-size:11px;line-height:1.4;color:var(--muted);margin-top:4px}
#report .rv3-profile-tx p{font-size:15px}
#report .rv3-chart{margin-top:var(--rs-3)}
#report .report-editorial,#report .report-face{display:none!important}
@media(max-width:380px){#report .rv3-profile{grid-template-columns:96px 1fr;gap:12px}}
html.rd #report .rv3-act{background:#1d273b}html.rd #report .rv3-basis li{background:rgba(210,173,106,.14)}
@media print{#report .r-page.rv3-ch{break-before:auto!important;margin-bottom:6mm!important}#report .rv3-intro{break-before:page!important}#report .rv3-hd,#report .rv3-lead{break-after:avoid}#report .rv3-profile{grid-template-columns:150px 1fr}#report .rv3-face{max-width:150px}#report .rv3-table,#report .rv3-bars,#report .rv3-profile,#report .rv3-act{break-inside:avoid}#report .rv3-tw{overflow:visible}}

/* Shared report layout: compact notice, balanced controls and editorial cover. */
#report .sb-note{box-sizing:border-box;font-size:11px;line-height:1.55;padding:8px 12px;margin-top:12px;margin-bottom:26px}
#report .report-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;width:100%;box-sizing:border-box}
#report #reportClose{justify-self:start;margin:0;min-width:0}
#report #themeToggle,#report #reportPDF{justify-self:end;margin:0}
#report #reportPDFStatus{grid-column:1/-1;text-align:center}
#report #reportPDFStatus:empty{display:none}
#report .rv3-cover{box-sizing:border-box;min-height:560px!important;min-height:min(720px,85svh)!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:64px clamp(24px,6vw,64px)!important;position:relative}
#report .rv3-cover::after{display:block!important;content:'';position:absolute;inset:12px;width:auto;height:auto;transform:none;border:1px solid var(--line2);border-radius:0;background:none;pointer-events:none}
#report .rv3-cover .eyebrow{font-size:10px;letter-spacing:.18em;color:var(--gold-ink);order:0;text-align:center}
#report .rv3-cover .r-compass{order:1;width:100%;margin:0}
#report .rv3-cover h2{order:2;max-width:16ch;font-size:clamp(30px,6vw,46px);line-height:1.45;word-break:keep-all;overflow-wrap:anywhere;margin:0;text-wrap:balance}
#report .rv3-cover>p{order:3;max-width:32em;font-size:12px;line-height:1.8;margin:0}
#report .rv3-cover .r-cover-meta{order:4;width:100%;justify-content:center;margin:24px 0 0;padding-top:22px;gap:32px}
#report .r-page ul.rv3-basis{padding:0;list-style:none;justify-content:flex-start}
#report .rv3-table{table-layout:fixed;width:100%;overflow-wrap:anywhere}
#report .rv3-facts th:first-child{width:25%}
@media(max-width:480px){#report .report-bar{padding:8px 10px;gap:6px}#report .report-bar button{font-size:12px;padding:6px 10px}#report .rv3-cover{min-height:520px!important;padding:48px 26px!important}}
@media print{#report .rv3-cover{min-height:250mm!important;break-after:page}#report .rv3-appendix{break-before:page!important}}


/* Interpretation first, technical evidence second; shared by main and reports. */
.reading-meaning{display:block;color:inherit}
.reading-evidence{display:block;font:400 12px/1.7 var(--body);color:var(--muted);margin-top:8px;overflow-wrap:anywhere}
.reading-evidence>span{font-weight:600;margin-right:5px}
#report .reading-evidence{font-size:12px;line-height:1.75;color:var(--ink2);font-family:var(--body);font-weight:400;letter-spacing:0}
#report .rv3-lead:has(>.reading-evidence:only-child){background:transparent;border:0;padding:0;font-weight:400}
#report .annual-score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:28px;margin:24px 0}
#report .annual-score-chart{margin:0;min-width:0;break-inside:avoid}
#report .annual-score-chart figcaption{font-size:15px;font-weight:700;margin:0 0 12px;color:var(--fg)}
#report .annual-axis{display:flex;justify-content:space-between;margin:0 46px 8px 66px;font-size:11px;color:var(--ink2)}
#report .annual-score-chart ol{list-style:none;margin:0;padding:0!important;display:grid;gap:10px}
#report .annual-score-chart li{display:grid;grid-template-columns:56px minmax(0,1fr) 36px;gap:10px;align-items:center;margin:0;padding:0;line-height:1.4;font-family:var(--body);font-size:12px}
#report .annual-track{height:13px;position:relative;background:var(--line);border-radius:3px;border-left:1px solid var(--line2)}
#report .annual-track::after{content:'';position:absolute;inset:0 50% 0 auto;border-left:1px dashed var(--muted);opacity:.4}
#report .annual-track>span{display:block;min-width:2px;height:100%;background:var(--ink2);opacity:.55;border-radius:3px;position:relative;z-index:1}
#report .annual-best .annual-track>span{background:var(--gold);opacity:1}
#report .annual-score-chart li>b{font-size:13px;font-variant-numeric:tabular-nums;text-align:right;color:var(--fg)}
#report .annual-score-chart li>b small{font-size:10px;font-weight:400}
#report .annual-caption{font-size:11px;line-height:1.7;margin:12px 0 0;color:var(--ink2)}
@media print{.reading-evidence,#report .reading-evidence{font-size:9pt;color:var(--ink2)}#report .annual-score-chart{break-inside:avoid}#report .annual-track>span{print-color-adjust:exact;-webkit-print-color-adjust:exact}}


/* Parentheses carry evidence in the same text style as the interpretation. */
.reading-meaning,.reading-evidence,#report .reading-evidence{display:inline;font:inherit;color:inherit;line-height:inherit;letter-spacing:inherit;margin:0;font-weight:inherit;overflow-wrap:anywhere}
#report .rv3-lead .reading-evidence{font:inherit;color:inherit}
#report .report-reading-key{margin:0 0 30px;padding-bottom:20px;border-bottom:1px solid var(--line2)}
#report .report-reading-key p{margin:10px 0 0}
#report .rv3-contents{min-height:420px}
#report .encounter-guide{display:grid;gap:22px;margin:20px 0 28px}
#report .encounter-guide>div{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:start}
#report .encounter-guide dt{font-weight:700;color:var(--gold-ink)}
#report .encounter-guide dd{margin:0;line-height:1.9;overflow-wrap:anywhere}
.spouse-preview .spouse-preview-content{grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:start}
.spouse-preview .spouse-preview-content figure{width:100%;margin:0}
.spouse-preview .spouse-preview-copy{text-align:left;min-width:0}
.spouse-preview .spouse-preview-copy p{font-size:13px;line-height:1.65;margin:0 0 12px}
.spouse-preview .spouse-preview-copy .spouse-preview-note{font-size:12px;color:var(--muted);margin-top:12px}
.spouse-preview .spouse-portrait{aspect-ratio:4/5;border-radius:10px}
.spouse-preview .spouse-portrait-label{font-size:10px;line-height:1.4;padding:18px 5px 8px}
.spouse-preview .spouse-face-traits{justify-content:flex-start;gap:5px}
.spouse-preview .spouse-face-traits span{font-size:11px;padding:4px 6px}
.spouse-preview h4{font-size:21px;margin:8px 0 18px}
@media(max-width:420px){.spouse-preview .spouse-preview-content{grid-template-columns:100px minmax(0,1fr);gap:12px}.spouse-preview{padding:15px}.spouse-preview .spouse-preview-copy button{font-size:12px;padding:8px;max-width:100%}}
@media print{#report .r-page.rv3-contents{break-before:page!important;break-after:page!important;min-height:230mm}#report .rv3-intro{break-after:page!important}}


/* Secondary evidence ink; retain the surrounding body size and inline flow. */
:root{--evidence-ink:#73767b;--evidence-ink-dark:#a5acb8}
.reading-evidence,#report .reading-evidence,#report .rv3-lead .reading-evidence{color:var(--evidence-ink)}
html.rd .reading-evidence,html.rd #report .reading-evidence,html.rd #report .rv3-lead .reading-evidence{color:var(--evidence-ink-dark)}
#resIntro .reading-evidence,.today .reading-evidence,.topic .reading-evidence{color:var(--evidence-ink-dark)}


/* Unified report rhythm: 8/16/24/32 spacing across every chapter and appendix. */
#report{--report-gap:16px;--report-section-gap:32px;--report-page-gap:24px}
#report .r-page{padding:36px clamp(20px,5vw,48px);margin:0 0 var(--report-page-gap)}
#report .r-page.rv3-ch{padding:36px clamp(20px,5vw,48px)}
#report .r-page .rv3-hd{margin:0 0 24px;padding:0 0 16px;border-bottom:1px solid var(--line2)}
#report .r-page .rv3-hd h2{margin:0;font-size:24px;line-height:1.45;text-align:left}
#report .r-page p,#report .r-page.rv3-ch p,#report .r-page .rv3-profile-tx p{font-family:var(--body);font-size:15px;line-height:1.85;margin:0 0 var(--report-gap);word-break:normal;overflow-wrap:anywhere}
#report .r-page p:last-child{margin-bottom:0}
#report .r-page div+p,#report .r-page svg+p{margin-top:0}
#report .r-page h3{font-family:var(--body);font-size:18px;line-height:1.5;text-align:left;margin:32px 0 16px;padding:0;border:0;background:none}
#report .r-page h3::before,#report .r-page h3::after{display:none}
#report .r-page h4{font-family:var(--body);font-size:16px;line-height:1.5;margin:24px 0 12px}
#report .r-page .rv3-lead{font-size:16px;line-height:1.85;font-weight:600;margin:0 0 24px}
#report .r-page .rv3-profile{gap:20px;margin:0 0 24px}
#report .r-page .reading-sources{margin:24px 0}
#report .r-page .rv3-tw{margin:24px 0;overflow-x:auto}
#report .r-page .rv3-tw:last-child{margin-bottom:0}
#report .r-page .rv3-table{border-collapse:collapse;table-layout:fixed;width:100%;font:400 13px/1.7 var(--body);background:transparent}
#report .r-page .rv3-table caption{padding:0 0 10px;font-size:13px;text-align:left}
#report .r-page .rv3-table th,#report .r-page .rv3-table td{font-size:13px;line-height:1.7;text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);white-space:normal;word-break:normal;overflow-wrap:anywhere;vertical-align:top}
#report .r-page .rv3-table thead th{font-size:12px;font-weight:600;color:var(--ink2);background:var(--field);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
#report .r-page .score-basis{padding:0;margin:32px 0;border:0;break-inside:avoid}
#report .r-page .score-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 12px}
#report .r-page .score-heading h3{font-size:18px;margin:0}
#report .r-page .score-heading>span{font-size:22px;font-weight:600;white-space:nowrap;color:var(--gold-ink);font-variant-numeric:tabular-nums}
#report .r-page .score-heading small{font-size:12px;font-weight:400;margin-left:3px}
#report .r-page .score-basis .rv3-tw{margin:16px 0 0}
#report .r-page .score-table th:last-child,#report .r-page .score-table td:last-child{width:66px;text-align:right;font-variant-numeric:tabular-nums}
#report .r-page .method-table th:first-child{width:70px}
#report .r-page .range-table th:first-child{width:80px}
#report .r-page .rv3-act{margin:24px 0!important;padding:16px!important}
#report .r-page .report-reading-key{margin:0 0 32px;padding:0 0 24px}
#report .r-page .report-reading-key p{margin:8px 0 0}
#report .r-page .rv3-sum{margin:0;padding-left:1.25em}
#report .r-page .rv3-sum li{font-size:15px;line-height:1.85;margin:0 0 16px;padding-left:4px}
#report .r-page .annual-score-grid{gap:32px;margin:24px 0}
#report .r-page .annual-caption{font-size:12px;line-height:1.6;margin:12px 0 0}
#report .r-page .rv3-toc a{padding:12px 0;line-height:1.6}
@media(max-width:420px){#report .r-page,#report .r-page.rv3-ch{padding:32px 20px}#report .r-page .rv3-hd h2{font-size:22px}#report .r-page .method-table th,#report .r-page .method-table td{padding:10px 6px;font-size:12px}#report .r-page .method-table th:first-child{width:58px}}
@media print{#report .r-page,#report .r-page.rv3-ch{padding:14mm;margin:0 0 8mm}#report .r-page p,#report .r-page.rv3-ch p{font-size:11pt;line-height:1.8;margin-bottom:4mm}#report .r-page .rv3-table{break-inside:auto}#report .r-page .rv3-table tr{break-inside:avoid}#report .r-page .rv3-table thead{display:table-header-group}#report .r-page h3,#report .r-page .score-heading{break-after:avoid}}


/* Compact Tzolkin matrix: a narrow label column and 13 equal numeric columns. */
#report .r-page .maya-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:1px;font-variant-numeric:tabular-nums;margin:24px 0}
#report .r-page .maya-grid .maya-label-col{width:48px}
#report .r-page .maya-grid th,#report .r-page .maya-grid td{box-sizing:border-box;padding:4px 0;text-align:center;font-size:10px;line-height:1.2;vertical-align:middle}
#report .r-page .maya-grid th{font-weight:500;border:0;background:transparent;color:var(--muted)}
#report .r-page .maya-grid .maya-row{width:auto;padding:3px 4px 3px 0;text-align:left;font-family:var(--body);font-size:10px;overflow-wrap:anywhere;white-space:normal}
#report .r-page .maya-grid .maya-row small{font-size:8px;line-height:1.25;margin-top:2px}
#report .r-page .maya-grid td{height:29px;border:1px solid var(--line);border-radius:2px}
#report .r-page .maya-grid .maya-tone{display:block;width:100%;height:8px;margin:0 0 3px}
#report .r-page .maya-grid .maya-selected{box-shadow:inset 0 0 0 1px var(--gold)}
#report .r-page .maya-grid caption{padding-bottom:10px;text-align:left;font-size:12px;line-height:1.65}
@media(max-width:420px){#report .r-page .maya-grid .maya-label-col{width:38px}#report .r-page .maya-grid th,#report .r-page .maya-grid td{font-size:8px}#report .r-page .maya-grid .maya-row{font-size:9px;padding-right:2px}#report .r-page .maya-grid .maya-row small{font-size:7px}#report .r-page .maya-grid td{height:27px}}
@media print{#report .r-page .maya-grid{break-inside:avoid}#report .r-page .maya-grid .maya-label-col{width:13mm}}


/* Emphasize the defining strengths and destiny, keeping the lead sentence readable. */
:root{--destiny-emphasis-dark:#efd58d;--destiny-emphasis-light:#8a6127}
.destiny-highlight,.res-lead .destiny-highlight{color:var(--destiny-emphasis-dark);font:inherit;font-style:normal}
#report .destiny-highlight{color:var(--destiny-emphasis-light);font:inherit;font-style:normal}
html.rd #report .destiny-highlight{color:var(--destiny-emphasis-dark)}


/* Year-by-year line plots: common axes, visible observations and no smoothing. */
#report .annual-line-chart svg{display:block;width:100%;height:auto;overflow:visible}
#report .annual-line-chart .year-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:3 4}
#report .annual-line-chart .year-border{stroke:var(--line2);stroke-width:1}
#report .annual-line-chart text{font-family:var(--body);font-size:14px;fill:var(--ink2)}
#report .annual-line-chart .year-value{font-size:15px;fill:var(--fg);font-variant-numeric:tabular-nums}
#report .annual-line-chart .year-line{fill:none;stroke:var(--navy,var(--fg));stroke-width:2.2;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#report .annual-line-chart circle{fill:var(--navy,var(--fg));stroke:var(--panel);stroke-width:1}
#report .annual-line-chart .best circle{fill:var(--gold)}
#report .annual-line-chart .best .year-value{fill:var(--gold);font-weight:700}
html.rd #report .annual-line-chart .year-line{stroke:var(--fg)}
html.rd #report .annual-line-chart circle{fill:var(--fg)}
#report .annual-score-grid:has(.annual-line-chart){grid-template-columns:minmax(0,1fr);gap:32px}
@media print{#report .annual-line-chart{break-inside:avoid}}


/* Independent main-page disclosures. The map is mounted on first expansion. */
#actionBody{display:grid;gap:12px}
.main-guidance-toggle{min-width:0;border:1px solid var(--line2);border-radius:10px;background:var(--panel);overflow:hidden}
.main-guidance-toggle>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;padding:18px 16px;min-height:56px;box-sizing:border-box;font-size:17px;font-weight:700;line-height:1.5;color:var(--fg)}
.main-guidance-toggle>summary::-webkit-details-marker{display:none}
.main-guidance-toggle>summary::after{content:'+';font-size:22px;font-weight:400;line-height:1;color:var(--gold-ink);flex:none}
.main-guidance-toggle[open]>summary::after{content:'−'}
.main-guidance-toggle>summary:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.main-guidance-body{padding:0 16px 20px;min-width:0}
.main-guidance-body .act-list{margin-bottom:0}
.main-guidance-body .feng-place-heading h3{font-size:16px;margin:8px 0 12px}
.main-guidance-body .feng-map-wrap{box-sizing:border-box;max-width:100%}
.main-guidance-body .feng-map-layout{grid-template-columns:minmax(0,1fr)}
.main-guidance-body .feng-categories{min-width:0}
@media(max-width:420px){.main-guidance-toggle>summary{font-size:16px;padding:16px 12px}.main-guidance-body{padding:0 12px 16px}}


/* Compact main-place picker: three choices, one location preview and one map link. */
.compact-place-layout{display:grid;grid-template-columns:minmax(0,1fr) 105px;gap:16px;align-items:center}
.compact-place-list{display:grid;gap:0;min-width:0}
.compact-place-list button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--fg);font:inherit;cursor:pointer;padding:10px 8px;min-height:56px}
.compact-place-list button:last-child{border-bottom:0}
.compact-place-list button[aria-pressed=true]{background:var(--field);border-radius:6px}
.compact-place-list button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.compact-place-list small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-bottom:2px}
.compact-place-list b{display:block;font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.compact-place-map{margin:0;min-width:0}
.compact-place-map svg{display:block;width:100%;height:145px}
.compact-place-map figcaption{text-align:center;color:var(--muted);font-size:10px;line-height:1.5;margin-top:4px}
.compact-place-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:10px;margin-top:8px;font-size:12px;color:var(--muted)}
.compact-place-footer a{color:var(--gold-ink);text-decoration:none;white-space:nowrap;min-height:36px;display:inline-flex;align-items:center}
@media(max-width:380px){.compact-place-layout{grid-template-columns:minmax(0,1fr) 88px;gap:10px}.compact-place-map svg{height:130px}}


/* Browse the complete personally relevant list without expanding the page. */
.compact-place-count{font-size:12px;color:var(--muted);margin:0 0 10px;line-height:1.6}
.compact-place-count b{color:var(--gold-ink);font-weight:600}
.compact-place-layout{align-items:start}
.compact-place-list{max-height:260px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--line2) transparent;padding-right:5px;outline-offset:2px}
.compact-place-list button{min-height:61px}
.compact-place-list:focus-visible{outline:1px solid var(--gold);border-radius:4px}
.compact-place-map{padding-top:6px}


.td-adv{margin:16px 0;padding:16px 18px;border-radius:14px;border:1px solid var(--line2);background:var(--panel)}.td-adv span{display:block;font-size:13px;color:var(--gold-ink);font-weight:700;margin-bottom:4px}.td-adv b{display:block;font-family:var(--display);font-size:22px;line-height:1.4;color:var(--fg);word-break:keep-all}.td-adv p{margin:6px 0 0;font-size:15px;line-height:1.7;color:var(--ink2);word-break:keep-all}

.wk-line svg{width:100%;height:auto;overflow:visible}.wk-pt{cursor:pointer}.wk-pt .wk-dot{fill:var(--bg);stroke:var(--gold);stroke-width:3}.wk-pt.sel .wk-dot{fill:var(--gold);r:10}.wk-pt .wk-v{fill:var(--fg);font-size:20px;font-weight:700}.wk-pt .wk-d{fill:var(--muted);font-size:18px}.wk-pt.sel .wk-d{fill:var(--gold-ink);font-weight:700}.wk-pt:focus{outline:none}.wk-pt:focus-visible .wk-dot{stroke-width:5}.wk-hint{font-size:13px;color:var(--muted);margin:6px 0 0;text-align:center}
.td-head .td-adv{margin:6px 0 4px;padding:0;border:0;background:none}.td-head .td-adv b{font-size:20px}.td-head .td-adv p{font-size:14px}
.td-tbl{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}.td-tbl th,.td-tbl td{padding:9px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;word-break:keep-all}.td-tbl thead th{font-size:12.5px;color:var(--muted);font-weight:600}.td-tbl tbody th{color:var(--gold-ink);font-weight:600;white-space:nowrap}.td-tbl td:nth-child(2){color:var(--muted);font-size:13px}
#todayHead{margin-bottom:8px}.td-prose{font-size:15px;line-height:1.8;color:var(--ink2);margin:18px 0 6px;word-break:keep-all}
.flow-prose p{font-size:15px;line-height:1.85;color:var(--ink2);margin:0 0 14px;word-break:keep-all}.flow-prose b{display:block;color:var(--fg);margin-bottom:2px}.bc-pick span{display:block;line-height:1.75;margin-top:4px}
.bc-grid4{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bc-cell{margin:0;padding:10px 8px 4px;border:1px solid var(--line);border-radius:12px;background:rgba(74,53,43,.05)}.bc-cell figcaption{display:flex;flex-direction:column;gap:1px;padding:0 4px 4px}.bc-cell figcaption b{font-size:15px}.bc-cell figcaption span{font-size:11.5px;color:var(--muted)}.bc-cell svg{width:100%;height:auto;display:block;overflow:visible}.bc-cell .bc-t{font-size:10px}

.cmp-form .chart-fields{display:grid;gap:10px}.cmp-form label{display:flex;flex-direction:column;gap:4px;font-size:14px}.cmp-form label.chk{flex-direction:row;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.cmp-form input,.cmp-form select{min-height:44px;font-size:16px}.cmp-seg{display:flex;gap:14px;align-items:center;font-size:14px}.cmp-seg label{flex-direction:row;align-items:center;gap:6px}.cmp-form button[type=submit]{margin-top:12px;min-height:48px;width:100%}.cmp-score{text-align:center;padding:18px 0 6px}.cmp-score span{display:block;font-size:14px;color:var(--muted)}.cmp-score b{display:block;font-size:52px;line-height:1.1;color:var(--gold-ink);font-family:var(--display)}.cmp-score b small{font-size:18px}.cmp-score em{font-style:normal;font-size:16px;font-weight:700}.cmp-note{font-size:14px;line-height:1.7;color:var(--ink2);text-align:center}.cmp-open{width:100%;min-height:48px;margin-top:6px}
.cmp-form label.chk input{width:20px;height:20px;min-height:0;flex:none;margin:0}.cmp-form .tp-head,.topic .tp-head:not(:has(.tp-art)){display:block}
#report .rv3-line{margin:var(--rs-3) 0}#report .rv3-line figcaption{font-size:12.5px;font-weight:700;color:var(--muted);margin-bottom:4px}#report .rv3-line svg{width:100%;height:auto;display:block}
.cmp-saved ul{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:6px}.cmp-saved li{display:flex;gap:6px}.cmp-saved-h{font-size:13px;color:var(--muted);margin:0 0 6px}.cmp-load{flex:1;text-align:left;min-height:48px;padding:6px 12px;display:flex;flex-direction:column;gap:2px}.cmp-load small{font-size:12px;color:var(--muted)}.cmp-del{min-height:48px;padding:0 12px;font-size:13px}
#landing .landing-art{aspect-ratio:3/2!important;background-size:cover!important;background-position:center!important;height:auto!important}
.cmp-priv{font-size:12px;line-height:1.6;color:var(--muted);margin:2px 0 0}
.coffee-dialog{width:min(92vw,380px);border:1px solid var(--line2);border-radius:18px;background:var(--bg);color:var(--fg);padding:26px 22px 20px;text-align:center}.coffee-dialog::backdrop{background:rgba(0,0,0,.6)}.coffee-dialog h2{font-size:19px;margin:0 0 4px}.coffee-sub{margin:0 0 16px;color:var(--muted);font-size:14px}.coffee-x{position:absolute;right:10px;top:8px;width:40px;height:40px;border:0;background:none;color:var(--muted);font-size:24px;cursor:pointer}.coffee-qr{margin:0 auto 16px;background:#fff;border-radius:14px;padding:14px 14px 10px;width:250px}.coffee-pay{display:block;text-align:left;font-weight:800;font-size:18px;color:#111;margin-bottom:6px}.coffee-qr img{display:block;width:220px;height:220px;margin:0 auto;image-rendering:pixelated}.coffee-qr figcaption{color:#555;font-size:12px;margin-top:8px}.coffee-go{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:12px;background:#fee500;color:#191919;font-weight:700;text-decoration:none;font-size:16px}.coffee-note{margin:12px 0 0;font-size:12.5px;color:var(--muted);line-height:1.6}
.bar-actions{gap:6px!important}.bar-actions .top-icon{width:34px!important;height:34px!important;min-height:34px!important}.bar-actions .acct-login{font-size:0!important;padding:6px 12px!important}.bar-actions .acct-login::after{content:"로그인";font-size:13px}
.brandbar{justify-content:center!important;padding-left:0!important;padding-right:0!important}
#report .rv3-star{display:block;width:44px;height:44px;margin:14px auto 6px;color:#3fe0f0;filter:drop-shadow(0 0 3px rgba(63,224,240,.9)) drop-shadow(0 0 9px rgba(63,224,240,.55))}#report .rv3-star svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}#themeToggle{display:inline-grid!important;place-items:center!important;padding:0!important;line-height:0!important}#themeToggle svg{display:block}

/* 2026-11-05 운을 높이는 습관·추천 장소 v2 */
.act-v2,.place-v2{margin:0 0 28px}.act-hd h3{font-family:var(--display);font-size:21px;margin:0 0 6px}.act-hd p{font-size:14.5px;line-height:1.7;color:var(--ink2);margin:0 0 12px;word-break:keep-all}
.act-el{list-style:none;margin:0 0 16px;padding:12px 14px;display:grid;gap:6px;border:1px solid var(--line);border-radius:12px;background:rgba(74,53,43,.05)}.act-el li{display:grid;grid-template-columns:22px 1fr 18px;gap:8px;align-items:center;font-size:13px;color:var(--muted)}.act-el i{height:6px;border-radius:3px;background:var(--line);overflow:hidden}.act-el b{display:block;height:100%;background:var(--muted)}.act-el .is-dom b{background:var(--gold)}.act-el .is-sup b{background:var(--emerald)}.act-el .is-dom span{color:var(--gold-ink);font-weight:700}.act-el .is-sup span{color:var(--emerald);font-weight:700}.act-el em{font-style:normal;text-align:right}
.act-cards{list-style:none;margin:0;padding:0;display:grid;gap:12px}.act-card{padding:16px;border:1px solid var(--line2);border-radius:14px;background:var(--panel)}.act-card.done{border-color:var(--emerald);opacity:.85}.act-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12.5px}.act-k{color:var(--gold-ink);font-weight:700}.act-meta{color:var(--muted)}.act-t{display:block;font-size:17px;line-height:1.5;margin:6px 0 8px;word-break:keep-all}.act-steps{margin:0 0 8px;padding-left:1.3em;font-size:14.5px;line-height:1.75;color:var(--ink2)}.act-card .act-why{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 10px}.act-chk{display:flex;align-items:center;gap:8px;font-size:14px;min-height:40px;cursor:pointer}.act-chk input{width:20px;height:20px;accent-color:var(--emerald)}.act-progress{text-align:right;font-size:13px;color:var(--muted);margin:8px 2px 0}.act-progress b{color:var(--emerald)}
.cp-wrap{display:grid;grid-template-columns:42% 1fr;gap:12px;align-items:start}.cp-map{margin:0;padding:8px;border:1px solid var(--line);border-radius:14px;background:rgba(74,53,43,.06)}.cp-map svg{width:100%;height:auto;display:block}.cp-map .feng-land path{fill:rgba(160,180,190,.16);stroke:rgba(160,180,190,.35);stroke-width:1}.cp-pin{cursor:pointer}.cp-dot{fill:var(--emerald);opacity:.75}.cp-pin.on .cp-dot{fill:var(--gold);opacity:1}.cp-halo{fill:var(--gold);opacity:.25}.cp-pin:hover .cp-dot{opacity:1}
.cp-card{padding:14px;border:1px solid var(--line2);border-radius:14px;background:var(--panel);min-width:0}.cp-label{font-size:12px;color:var(--gold-ink);font-weight:700}.cp-card h4{font-size:17px;margin:4px 0 2px;line-height:1.4;word-break:keep-all}.cp-region{display:block;font-size:12.5px;color:var(--muted);margin-bottom:8px}.cp-do{font-size:14px;line-height:1.65;margin:0 0 6px;color:var(--ink2)}.cp-do b{display:block;font-size:12px;color:var(--emerald);margin-bottom:2px}.cp-why{font-size:12.5px;line-height:1.6;color:var(--muted);margin:0 0 8px}.cp-links{display:flex;gap:6px;flex-wrap:wrap}.cp-links a{flex:1;text-align:center;min-height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line2);border-radius:10px;font-size:13px;color:var(--fg);text-decoration:none}
.cp-list{display:flex;gap:8px;overflow-x:auto;padding:12px 2px 6px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.cp-list button{flex:0 0 150px;scroll-snap-align:start;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(74,53,43,.05);color:var(--fg);display:flex;flex-direction:column;gap:2px;min-height:76px;cursor:pointer}.cp-list button[aria-pressed=true]{border-color:var(--gold-ink);background:var(--panel)}.cp-list small{font-size:11.5px;color:var(--gold-ink)}.cp-list b{font-size:14px;line-height:1.35;word-break:keep-all}.cp-list span{font-size:11.5px;color:var(--muted)}
@media(max-width:400px){.cp-wrap{grid-template-columns:1fr}.cp-map{max-width:220px;margin:0 auto}}
#actionBody,.act-v2,.place-v2{min-width:0;max-width:100%}.cp-wrap{grid-template-columns:minmax(0,42%) minmax(0,1fr)!important}.cp-list{max-width:100%}
.cp-wrap{grid-template-columns:1fr!important}.cp-map{width:100%;max-width:330px;margin:0 auto;box-sizing:border-box}.cp-map .feng-land path{stroke:rgba(160,180,190,.12)!important;fill:rgba(160,180,190,.2)!important}.cp-pin .cp-dot{stroke:var(--bg);stroke-width:3}
.cp-pin:focus{outline:none}
.cp-map{position:relative}.cp-zoom{position:absolute;right:8px;top:8px;display:flex;flex-direction:column;gap:4px}.cp-zoom button{min-width:36px;height:34px;padding:0 6px;border:1px solid var(--line2);border-radius:8px;background:var(--bg);color:var(--fg);font-size:16px;cursor:pointer}.cp-zoom button[data-cp-zoom=all]{font-size:11px}.cp-zoom button:disabled{opacity:.35;cursor:default}.cp-name{fill:var(--fg);paint-order:stroke;stroke:var(--bg);stroke-width:.25em;font-weight:600;pointer-events:none}.cp-h{font-size:15px;margin:16px 0 8px}.cp-top{display:grid;gap:8px}.cp-top button{display:grid;grid-template-columns:1fr auto;grid-template-areas:"s s" "b r";gap:2px 8px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(74,53,43,.05);color:var(--fg);cursor:pointer;min-height:60px}.cp-top button small{grid-area:s;font-size:11.5px;color:var(--gold-ink)}.cp-top button b{grid-area:b;font-size:15px}.cp-top button span{grid-area:r;font-size:12px;color:var(--muted);align-self:end}.cp-top button[aria-pressed=true]{border-color:var(--gold-ink);background:var(--panel)}.cp-more{margin-top:10px}.cp-more summary{cursor:pointer;list-style:none;display:flex;justify-content:center;align-items:center;gap:6px;min-height:46px;border:1px solid var(--line2);border-radius:12px;font-size:14px;color:var(--fg)}.cp-more summary::-webkit-details-marker{display:none}.cp-more summary span{color:var(--muted);font-size:12.5px}.cp-more summary::after{content:"⌄";color:var(--gold-ink)}.cp-more[open] summary::after{content:"⌃"}.cp-more[open] summary{margin-bottom:8px}
.cp-map svg{touch-action:none;cursor:grab;user-select:none}.cp-map svg:active{cursor:grabbing}.cp-dot{fill:var(--emerald)}.cp-pin.on .cp-dot{fill:var(--gold)}.cp-dot{stroke:var(--bg)}.cp-halo{fill:var(--gold);opacity:.25}.cp-name{fill:var(--fg);paint-order:stroke;stroke:var(--bg);stroke-width:.3em;font-weight:600;pointer-events:none}.cp-pin.on .cp-name{fill:var(--gold)}.cp-hint{font-size:11px;color:var(--muted);text-align:center;margin-top:4px}.cp-scroll{max-height:300px;overflow-y:auto;padding-right:4px;overscroll-behavior:contain;border:1px solid var(--line);border-radius:12px;padding:8px}
#report .pp{margin:0 0 12px}#report .pp-h{font-weight:800;font-size:16px;color:var(--navy,var(--fg));margin:0 0 8px}#report .pp-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}#report .pp-chips span{font-size:12.5px;padding:4px 10px;border-radius:999px;border:1px solid var(--line2);background:#fffaf1}#report .pp-list{margin:0;display:grid;gap:4px}#report .pp-list div{display:grid;grid-template-columns:84px 1fr;gap:8px;font-size:14px;line-height:1.55;padding:5px 0;border-bottom:1px dashed var(--line)}#report .pp-list dt{color:var(--gold);font-weight:700;font-size:12.5px}#report .pp-list dd{margin:0}#report .pp-note{font-size:12px;color:var(--muted);margin:6px 0 0}#report .fun-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}#report .fun-card{padding:12px;border-radius:10px;background:#f4ebdb;display:flex;flex-direction:column;gap:4px}#report .fun-card small{font-size:12px;color:var(--gold);font-weight:700}#report .fun-card b{font-size:15px;line-height:1.45;word-break:keep-all}html.rd #report .fun-card{background:#1d273b}html.rd #report .pp-chips span{background:#1d273b}
.spouse-facts{margin:10px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:6px}.spouse-facts div{padding:8px 10px;border:1px solid var(--line2);border-radius:10px}.spouse-facts dt{font-size:11.5px;color:var(--gold-ink)}.spouse-facts dd{margin:2px 0 0;font-size:14px;font-weight:700}
#report .pp-facts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 8px}#report .pp-facts div{padding:8px 10px;border-radius:8px;background:#f4ebdb}#report .pp-facts small{display:block;font-size:11.5px;color:var(--gold);font-weight:700}#report .pp-facts b{font-size:15px;word-break:keep-all}#report .pp-vibe{font-size:14.5px;font-weight:700;margin:0}#report .pp-rest{margin-top:14px}html.rd #report .pp-facts div{background:#1d273b}

#report .r-page .rv3-profile{grid-template-columns:100px minmax(0,1fr);gap:20px;align-items:start;margin:0 0 24px}
#report .r-page .rv3-profile-tx{min-width:0}
#report .r-page .pp-rest{margin:24px 0 12px}
#report .r-page .pp-list>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;padding:12px 0}
#report .r-page .pp-list dt{font-size:12px;line-height:1.7}
#report .r-page .pp-list dd{margin:0;font-size:14px;line-height:1.8;overflow-wrap:anywhere}
#report .r-page p.pp-note{font-size:11px;line-height:1.7;color:var(--evidence-ink);font-weight:400;margin:8px 0 24px}
html.rd #report .r-page p.pp-note{color:var(--evidence-ink-dark)}
#report .r-page .partner-reading{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
#report .r-page .encounter-story{margin:0 0 24px}
#report .r-page .encounter-story h3{margin:0 0 12px}
@media(max-width:420px){#report .r-page .rv3-profile{grid-template-columns:85px minmax(0,1fr);gap:16px}#report .r-page .pp-list>div{grid-template-columns:76px minmax(0,1fr);gap:10px}}


/* Balanced relationship portrait and compact, aligned fact cards. */
#report .r-page .rv3-profile{grid-template-columns:128px minmax(0,1fr);gap:20px;align-items:start}
#report .r-page .rv3-face{max-width:128px}
#report .r-page .pp-h{display:none}
#report .r-page .pp-chips{margin:0 0 10px;gap:5px}
#report .r-page .pp-chips span{font-size:11px;padding:4px 7px}
#report .r-page .pp-facts{display:grid;grid-template-columns:.85fr 1.15fr;gap:6px;margin:0 0 10px;align-items:stretch}
#report .r-page .pp-facts>div{padding:8px;min-height:0;box-sizing:border-box}
#report .r-page .pp-facts small{font-size:10px;line-height:1.5;margin-bottom:4px;white-space:nowrap}
#report .r-page .pp-facts b{display:block;font-size:13px;line-height:1.5;white-space:nowrap}
#report .r-page p.pp-vibe{font-size:13px;line-height:1.7;margin:0}
.spouse-preview .spouse-preview-content{grid-template-columns:132px minmax(0,1fr);gap:16px}
.spouse-preview .spouse-preview-copy .spouse-facts{display:grid;grid-template-columns:.85fr 1.15fr;gap:6px;margin:10px 0}
.spouse-preview .spouse-facts>div{padding:8px;min-height:0;box-sizing:border-box}
.spouse-preview .spouse-facts dt{font-size:10px;line-height:1.5;white-space:nowrap}
.spouse-preview .spouse-facts dd{font-size:12px;line-height:1.5;margin:4px 0 0;white-space:nowrap}
@media(max-width:420px){#report .r-page .rv3-profile{grid-template-columns:104px minmax(0,1fr);gap:12px}#report .r-page .rv3-face{max-width:104px}.spouse-preview .spouse-preview-content{grid-template-columns:108px minmax(0,1fr);gap:12px}.spouse-preview .spouse-preview-copy>p:first-child{font-size:12px;margin-bottom:8px}}


.site-legal{box-sizing:border-box;max-width:760px;margin:48px auto 0;padding:28px 20px 40px;border-top:1px solid var(--line);font:12px/1.8 var(--body);color:var(--muted)}
.site-legal nav{display:flex;flex-wrap:wrap;gap:2px 16px;margin:12px 0}.site-legal button{font:inherit;color:var(--muted);background:none;border:0;padding:6px 0;min-height:36px;cursor:pointer}.site-legal a{color:inherit}
.policy-dialog{box-sizing:border-box;width:calc(100% - 28px);max-width:760px;max-height:88svh;overflow:auto;background:var(--panel);color:var(--fg);border:1px solid var(--line2);border-radius:14px;padding:24px;font:14px/1.85 var(--body)}
.policy-dialog::backdrop{background:rgba(0,0,0,.7)}.policy-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.policy-dialog h2{font-size:22px;margin:0}.policy-dialog h3{font:600 17px/1.5 var(--body);margin:28px 0 12px}.policy-dialog p{margin:0 0 16px}.policy-dialog button{font:inherit;color:var(--fg);border:1px solid var(--line2);background:var(--field);padding:8px 12px;border-radius:8px;cursor:pointer;white-space:nowrap}.policy-dialog table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.policy-dialog th,.policy-dialog td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.policy-dialog th:first-child{width:88px}.policy-dialog dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:10px 16px}.policy-dialog dd{margin:0;overflow-wrap:anywhere}.policy-dialog dt{color:var(--muted)}.policy-dialog a{color:var(--gold-ink)}.policy-empty{min-height:24px;border-bottom:1px dashed var(--line2)}.policy-pending{color:var(--muted);font-size:12px}
@media(max-width:420px){.policy-dialog{padding:18px}.policy-dialog dl{grid-template-columns:100px minmax(0,1fr)}}
@media print{.site-legal,.policy-dialog{display:none!important}}


/* Compact report toolbar, with the report back action in the brand bar. */
#reportClose.report-back-icon{display:none}
html.rep-lock #reportClose.report-back-icon{display:inline-flex;align-items:center;justify-content:center;position:absolute;left:10px;top:50%;transform:translateY(-50%);width:36px;height:36px;padding:0;min-height:36px;min-width:36px;border:1px solid var(--line2);border-radius:50%;background:var(--field);color:var(--gold-ink);z-index:2}
html.rep-lock .brandbar{padding-left:52px}
#report .report-bar{display:grid;grid-template-columns:minmax(0,1fr) 36px 36px 36px;gap:6px;align-items:center;padding:8px 12px}
#report .report-bar #reportAppendix{justify-self:start;text-align:left;font-size:12px;line-height:1.4;min-height:36px;padding:7px 10px;margin:0;border:1px solid var(--line2);border-radius:999px;color:var(--fg);background:var(--field);font-family:var(--body);cursor:pointer}
#report .report-bar .report-icon,#report .report-bar #themeToggle{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;min-height:36px;border-radius:50%;padding:0;margin:0;border:1px solid var(--line2);background:var(--field);color:var(--fg)}
#report .report-bar #reportPDF{background:var(--navy,var(--fg));color:var(--panel)}
html.rd #report .report-bar #reportPDF{background:var(--gold);color:var(--bg)}
#report .report-bar #reportPDFStatus{grid-column:1/-1}
#report #report-appendix{scroll-margin-top:76px}
@media(max-width:380px){#report .report-bar{padding:8px;gap:4px}#report .report-bar #reportAppendix{font-size:11px;padding:6px 8px}}
@media print{#reportClose.report-back-icon{display:none!important}}


#report .report-info-dialog{box-sizing:border-box;width:calc(100% - 24px);max-width:700px;max-height:88svh;overflow:auto;padding:16px;background:var(--panel);color:var(--fg);border:1px solid var(--line2);border-radius:12px}
#report .report-info-dialog::backdrop{background:rgba(0,0,0,.72)}
#report .report-info-close{display:block;position:sticky;top:0;z-index:2;margin:0 0 12px auto;min-height:36px;padding:6px 12px;border:1px solid var(--line2);border-radius:8px;background:var(--panel);color:var(--fg);font:inherit;cursor:pointer}
#report .report-info-dialog .r-page{margin:0;padding:20px 12px;border:0;box-shadow:none}
#report .report-info-dialog .r-page::after{display:none}
#report .report-info-dialog .rv3-hd h2{font-size:21px}
@media print{#report .report-info-dialog{display:none!important}}


/* Transparent floating report controls: no full-width toolbar surface. */
#report .report-bar{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;grid-template-columns:minmax(0,1fr) 36px 36px 36px}
#report .report-bar::before,#report .report-bar::after{display:none!important}
#report .report-bar #reportAppendix{display:inline-flex;align-items:center;justify-content:center;justify-self:start;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border-radius:50%;font-size:14px}
#report .report-bar>button{box-shadow:0 2px 8px rgba(0,0,0,.12)}
#report .report-bar #reportPDFStatus:not(:empty){justify-self:end;width:auto;max-width:100%;padding:6px 10px;border-radius:8px;background:var(--panel)}
@media print{#report .report-bar{display:none!important}}


/* Keep the brand and account controls in separate, measured columns. */
#brandbar{display:flex!important;justify-content:space-between!important;gap:10px!important;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))!important}
#brandbar .brandbar-brand{display:flex;align-items:center;gap:7px;min-width:0;font-size:18px;white-space:nowrap}
#brandbar .brandbar-title{min-width:0;overflow:hidden;text-overflow:ellipsis}
#brandbar .brandbar-mark{flex:none}
#brandbar .brandbar-mark svg{width:22px;height:22px}
#brandbar .bar-actions{position:static;flex:none;gap:6px!important}
html.rep-lock #brandbar{padding-left:max(56px,env(safe-area-inset-left))!important}
.auth-feedback{position:fixed;top:calc(var(--brandbar-h) + 8px);left:12px;right:12px;z-index:10020;max-width:520px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line2);border-radius:12px;background:var(--net-bg);color:var(--fg);font:14px/1.6 var(--body);box-shadow:0 6px 24px #0006}
.auth-feedback span{flex:1}
.auth-feedback button{flex:none;width:36px;height:36px;min-height:36px;padding:0;border:0;background:transparent;color:var(--fg);font-size:22px}
@media(max-width:380px){
 #brandbar{gap:6px!important;padding-left:10px!important;padding-right:10px!important}
 #brandbar .brandbar-brand{font-size:15px;gap:5px}
 #brandbar .brandbar-mark svg{width:19px;height:19px}
 #brandbar .bar-actions{gap:4px!important}
 #brandbar .bar-actions .acct-login{padding:6px 10px!important}
}
@media(max-width:340px){#brandbar .brandbar-brand{font-size:13px}}
@media print{.auth-feedback{display:none!important}}



.spouse-preview{padding:20px 22px}.spouse-preview h4{margin:0 0 16px;font-size:21px}.spouse-preview-content{gap:20px}.spouse-preview-copy .spouse-preview-note{margin:10px 0}
.topic-intro .eyebrow{display:none}.topic-intro h3{margin-top:0}.tabp .blk-first{margin-top:14px}
.spouse-preview-content{align-items:start}.spouse-preview-copy{text-align:left}.spouse-preview .spouse-face-traits{margin-top:0}.spouse-preview figcaption.spouse-preview-note{font-size:11px;line-height:1.5;margin-top:6px;color:var(--muted)}
del{opacity:.55;font-weight:400;font-size:.85em}.free{color:var(--gold-ink)}.launch{display:inline-block;margin-left:4px;font-size:11px;font-weight:400;color:var(--emerald)}
.q-beta{font-size:13px;line-height:1.7;color:var(--muted);margin-top:6px}.q-email{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink2);margin-top:12px}.q-email input{font:inherit;padding:10px 12px;border:1px solid var(--line2);border-radius:9px;background:var(--field);color:var(--fg)}
.coffee-feedback{margin-top:16px;padding-top:14px;border-top:1px solid var(--line2);text-align:center}.coffee-feedback b{font-size:14px}.coffee-feedback p{font-size:12px;line-height:1.7;color:var(--muted);margin:6px 0 8px;word-break:keep-all}.coffee-feedback a{font-size:14px;color:var(--gold-ink)}

:root{--flow-caution:#A83758}
.flow-prose .flow-caution{color:var(--flow-caution)}
.flow-prose .flow-caution strong{font-weight:500}

:root{--destiny-soft:#d6a4b1}
.res-lead .destiny-soft{color:var(--destiny-soft)}
.res-lead .destiny-strength{color:var(--gold-ink)}

/* 2026-11-07: 좁은 화면 인연 프로필 넘침, 표지 제목 줄바꿈, 하단 안내 정렬, 로그인 저장 동의 창 */
#report .nowrap{white-space:nowrap}
#report .pp-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#report .pp-facts b{overflow-wrap:anywhere}
#report .rv3-profile-tx{min-width:0}
@media(max-width:400px){#report .rv3-profile{grid-template-columns:96px minmax(0,1fr)!important;gap:12px}#report .pp-facts{grid-template-columns:1fr}#report .pp-chips span{font-size:11.5px;padding:3px 8px}}
#report .r-foot{text-align:left}
.login-save-dialog{width:min(92vw,380px);border:1px solid var(--line2);border-radius:16px;background:var(--bg);color:var(--fg);padding:22px 20px}.login-save-dialog::backdrop{background:rgba(0,0,0,.6)}.login-save-dialog h2{font-size:18px;margin:0 0 8px}.login-save-dialog p{font-size:14px;line-height:1.7;color:var(--ink2);margin:0 0 12px}.login-save-dialog label{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6;padding:12px;border:1px solid var(--line2);border-radius:12px;cursor:pointer}.login-save-dialog label input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--gold-ink)}.login-save-dialog small{display:block;color:var(--muted);font-size:12px}.login-save-btns{display:flex;gap:8px;margin-top:14px}.login-save-btns button{flex:1;min-height:46px;border-radius:12px;font-size:15px;cursor:pointer}#loginSaveGo{background:#fee500;color:#191919;border:0;font-weight:700}#loginSaveCancel{background:none;border:1px solid var(--line2);color:var(--fg)}

/* 2026-11 근거 병기: 괄호 없이 약간 흐린 회색으로, 본문보다 한 단계 작게 */
.reading-evidence,#report .reading-evidence,#report .rv3-lead .reading-evidence{font-size:.93em}


/* ============================================================
   2026-11 캐릭터 테마: 크림 배경 + 마스코트(흰 강아지·돋보기) 라인 컬러.
   앞의 :root 블록들을 마지막에 덮어쓰는 방식이라 기존 규칙은 건드리지 않는다.
   ============================================================ */
:root{
  --bg:#FFF9F4; --panel:#FFFFFF; --field:#FFFCF8;
  --line:rgba(74,53,43,.14); --line2:rgba(74,53,43,.28);
  --fg:#4A352B; --muted:#8A7668; --dim:#A99A8C; --ink2:#6B584A;
  --on-accent:#3B2A22;
  --emerald:#3E9FBF; --teal:#5BB3D0; --gold:#E8B964; --ember:#F39B6B; --rose:#E8799F; --violet:#9B86E0;
  --money:#E8B964; --love:#F2A7C3; --work:#8FC9E8; --health:#8FD8B4;
  --trait-dot:#9BD47E; --net-bg:#FFF4EA; --net-core:#F2E2D1; --net-node:#BFE0F0;
  --evidence-ink:#9C8A7B; --evidence-ink-dark:#9C8A7B;
  color-scheme:light;
}
html,body{background:var(--bg);color:var(--fg)}

/* 배경 일러스트는 캐릭터와 톤이 달라 내린다 */
#oracle-dream{display:none}
.sigil{opacity:.12}
#landing{background:linear-gradient(170deg,#FFF3E8,var(--bg))}

/* 히어로: 마스코트 한 장 */
:root{--landing-art:url("img/mascot.webp")}
.landing-art{border:1px solid var(--line);box-shadow:0 18px 40px -30px rgba(74,53,43,.5);background-color:#fff}
#landing .landing-art{aspect-ratio:1!important;border-radius:28px!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important}
.landing-headline{color:var(--fg)!important}

/* 상단바 마크도 같은 캐릭터로 */
.brandbar{background:rgba(255,249,244,.94);color:var(--fg);border-bottom:1px solid var(--line)}
.brandbar-mark{color:var(--emerald)!important;filter:none!important;width:26px;height:26px;background:var(--landing-art) center/contain no-repeat}
#brandbar .brandbar-mark svg,.brandbar-mark svg{display:none}

/* 각진 모서리 → 둥글게 */
.landing-bottom button,.go button,.report-cta button{border-radius:999px}

/* 다크 전제로 박혀 있던 표면들 */
.maptip{background:rgba(255,255,255,.96);color:var(--fg)}
.tcard{background:linear-gradient(160deg,#fffdfa,#f6ece0)}
.cell span{color:var(--fg)}


/* ============================================================
   2026-11 (2) 가독성·글꼴·하단 탭바
   ============================================================ */
:root{
  /* 크림 배경에서 흐려 보이던 보조 글자색을 한 단계씩 진하게 */
  --muted:#6E5A4C; --dim:#857160; --ink2:#55433A;
  --evidence-ink:#7A6757; --evidence-ink-dark:#7A6757;
  --accent-ink:#1F7A95;          /* 작은 라벨·강조 글자용(크림 위 4.5:1 이상) */
  --display:"Jua","Gowun Dodum","Apple SD Gothic Neo",sans-serif;
  --latin:var(--display);
  --tabbar-h:60px;
}
/* Jua는 한 굵기뿐이라 가짜 볼드를 끈다 */
h1,h2,h3,h4,.landing-headline,.brandbar,.brandbar-title,.r-cover h2,.tp-a{font-weight:400!important;letter-spacing:-.01em}
body{font-size:15.5px;line-height:1.72}
.eyebrow,.topic-intro .eyebrow,.topic-offer .eyebrow,.res-eyebrow{color:var(--accent-ink)!important}
small,.fine,.cmp-priv,.pp-note,figcaption{color:var(--muted)}
::placeholder{color:#9C8A7B;opacity:1}

/* 하단 탭바 (모바일) */
.tabbar{display:none}
@media(max-width:760px){
  .tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:8000;
    height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);
    background:rgba(255,249,244,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
    border-top:1px solid var(--line);box-shadow:0 -6px 18px -14px rgba(74,53,43,.5)}
  .tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    border:0;background:none;color:var(--muted);font:inherit;font-size:11px;cursor:pointer;min-height:44px;padding:0}
  .tabbar button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .tabbar button[aria-current="true"]{color:var(--accent-ink)}
  .tabbar button:active{transform:translateY(1px)}
  body{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px))}
  .coffee-qr,.report-purchase{margin-bottom:var(--tabbar-h)}
}

/* 크림 배경에서 읽히도록 강조색 재조정 */
:root{
  --gold-ink:#8A5A1E;          /* 금색을 글자색으로 쓸 때 */
  --ink:#45342A;               /* 리포트 본문 */
  --emerald:#237F9C; --teal:#2E8FAE; --trait-dot:#5A9A34;
}
.destiny-highlight,.res-lead .destiny-highlight{color:#8A5A1E}
#report .destiny-highlight{color:var(--destiny-emphasis-light)}

:root{--trait-dot:#3F7524}

/* 리포트 안내 블록만 진한 갈색으로 남겨 대비를 준다 */
.report-cta{background:#2A211C!important;color:#FFF6EC;border-color:rgba(255,246,236,.16)}
.report-cta h3,.report-cta b,.report-cta strong,.report-cta em{color:#FFF6EC}
.report-cta p,.report-cta span,.report-cta small,.report-cta li{color:#DCCCBA}
.report-cta .eyebrow{color:#F3D9A4!important}
/* 그 안의 흰 책 표지는 원래 색으로 되돌린다 */
.report-cta .rc-book,.report-cta .rc-book b,.report-cta .rc-book em,.report-cta .rc-book span{color:var(--fg)}
.report-cta .rc-book small,.report-cta .rc-book p{color:var(--muted)}
.report-cta .rc-book .eyebrow{color:var(--gold-ink)!important}

/* ============================================================
   2026-11 (3) 대비 2차 보정 · 랜딩 CTA 위치
   ============================================================ */
/* 랜딩: 강아지 아래 전체 폭 CTA */
.landing-cta-under{margin:22px auto 0;max-width:460px;width:100%}
.landing-cta-under button{width:100%}

/* 다크 전제로 남아 있던 면들 */
.plist{background:#fff;border-color:var(--line2);box-shadow:0 14px 30px -16px rgba(74,53,43,.45)}
.plist li{color:var(--fg)}
.plist li small{color:var(--muted)}
.plist li:hover,.plist li[aria-selected="true"]{background:#EAF4F9}
.r-page{background:#fff}
#report .report-bar{background:rgba(255,249,244,.96)}
@media print{html.rep-lock:not(.rd),html.rep-lock:not(.rd) body{background:#fff!important}}

/* 본문은 흐린 회색 대신 기본 글자색으로 */
.r-prose p,.sum-prose p,.cat p,.tabp p,.topic-answer p,.res-intro p{color:var(--fg)}
.lede,.landing-lead,.landing-questions{color:#5C4639}

/* 그래프 눈금·연도처럼 작은 글자 */
.annual-axis,.annual-caption,.mini-x,.mini-x small,.gx,.gy,.cat h3 small,figcaption,.chart-note{color:#6E5A4C}

/* 강조색을 한 단계 더 진하게(칩·배지 배경 위에서도 4.5:1) */
:root{--emerald:#1F7A95;--teal:#2A8099;--accent-ink:#1A6A83}
.mapbox,.maptabs button{color:var(--fg)}

/* 분야 색을 글자로 쓰는 곳(그래프 제목 등)까지 읽히도록 한 단계 진하게 */
:root{
  --money:#B07512; --love:#C2456E; --work:#2A7FA6; --health:#2E7D55;
  --dim:#6E5A4C;
}
.done{color:#06231A}

/* ---- 대비 마무리 ---- */
:root{--money:#8A5B0C; --love:#A83758; --work:#1F6283; --health:#236344}
.flow-caution{color:#A83758}
.sb-note,.sb-note b{color:#7A5312}
.done{background:#DFF3E6;color:#14452F}
svg .wk-d,.wk-d{fill:#6E5A4C}
/* 진한 갈색 블록 안의 글자(맨 뒤에 둬서 본문 색 규칙보다 뒤에 오게) */
.report-cta p,.report-cta span,.report-cta small,.report-cta li{color:#DCCCBA}
.report-cta h3,.report-cta b,.report-cta strong,.report-cta em{color:#FFF6EC}
.report-cta .rc-book,.report-cta .rc-book b,.report-cta .rc-book em,.report-cta .rc-book span,.report-cta .rc-book p{color:var(--fg)}
.report-cta .rc-book small{color:var(--muted)}
.report-cta .rc-book .eyebrow{color:var(--gold-ink)!important}

.mapfoot .done{color:#fff}

/* ---- 2026-11 (4) 누끼 마스코트 · 8자리 생년월일 · 탭 3개 ---- */
/* 배경이 투명한 일러스트라 흰 카드 없이 그대로 얹는다 */
.landing-art{background-color:transparent;border:0;box-shadow:none}
#landing .landing-art{border-radius:0!important}

/* 생년월일 한 칸 */
.ymd1{display:block}
.ymd1 #in-ymd{width:100%;font:inherit;font-variant-numeric:tabular-nums;letter-spacing:.06em}

/* 하단 탭 3개 */
@media(max-width:760px){
  .tabbar{grid-template-columns:repeat(3,1fr)}
  .tabbar button span{font-size:10.5px;line-height:1.25;text-align:center;word-break:keep-all}
}
/* '무엇이 궁금하세요'는 하단 탭으로 열 때만 보인다 */
.topic-fold{display:none}
body.show-topics .topic-fold{display:block}

/* 2026-11-10: 리포트 장 제목 아래 계산 근거 칩, 리포트 안내의 유료 전용 목록 */
#report .rv3-basis{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 var(--rs-3,16px);padding:0}
#report .rv3-basis span{font-size:12px;line-height:1.4;color:var(--ink2,#6b5f52);background:rgba(168,123,54,.12);border-radius:999px;padding:3px 10px;max-width:100%;overflow-wrap:anywhere}
.report-cta .rc-only{margin:14px 0 4px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.08)}
.report-cta .rc-only b{display:block;font-size:14px;margin-bottom:6px}
.report-cta .rc-only ul{margin:0;padding-left:18px;font-size:13px;line-height:1.6}
.report-cta .rc-only ul{text-align:left}
.report-cta .rc-fine a{color:inherit;text-decoration:underline}
#report .rv3-more{margin:0 0 var(--rs-3,16px)}
#report .rv3-more>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:14px;font-weight:600;color:var(--gold-ink,#8A5A1E)}
@media print{#report .rv3-more>summary{display:none}}
/* 2026-11-11: 표는 내용 길이에 맞춰 열 폭을 정하고(짧은 열은 좁게, 글이 긴 열은 넓게), 마스코트 그림 옆으로 표가 좁아지지 않게 한다. */
#report .rv3-tw{clear:both}
#report .r-page .rv3-tw .rv3-table{table-layout:auto}
#report .r-page .rv3-tw .rv3-table td{min-width:4.5em}
#report .r-page .rv3-tw .rv3-table tbody th{white-space:nowrap;width:1%}
#report .r-page .rv3-tw .rv3-table td:last-child{width:auto;min-width:9em}
#report .rv3-yearnote{list-style:none;margin:8px 0 var(--rs-3,16px);padding:0;font-size:14px;line-height:1.7}
#report .rv3-yearnote b{display:inline-block;min-width:5.5em;color:var(--gold-ink,#8A5A1E)}
#report .r-page .rv3-tw .rv3-table td.nw{white-space:nowrap;width:1%;min-width:0}
/* 2026-11-11 b: 열 폭을 지정한 표(.fixed)는 고정 배치, 가로 스크롤 없이 칸 안에서 줄바꿈. 첫 칸의 '\n'은 줄바꿈으로. */
#report .r-page .rv3-tw .rv3-table td,#report .r-page .rv3-tw .rv3-table td:last-child{min-width:0}
#report .r-page .rv3-tw .rv3-table.fixed{table-layout:fixed;width:100%}
#report .r-page .rv3-tw .rv3-table.fixed th,#report .r-page .rv3-tw .rv3-table.fixed td{width:auto;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
#report .r-page .rv3-tw .rv3-table tbody th{white-space:pre-line}
#report .r-page .rv3-tw .rv3-table.fixed td.nw{white-space:nowrap}
#report .r-page .rv3-tw .rv3-table.fixed th,#report .r-page .rv3-tw .rv3-table.fixed td{padding:8px 5px}
#report .r-page .rv3-tw .rv3-table.fixed tbody th{overflow-wrap:normal;word-break:keep-all}
#report .r-page .rv3-tw .rv3-table.fixed tbody th{white-space:pre-line}
/* 2026-11-12: 10년 흐름 장은 그래프·표를 위에 두고 해마다 해설은 아래에. 표와 해설 사이 여백. */
#report .rv3-flowtop{margin:0 0 40px;padding-bottom:24px;border-bottom:1px dashed var(--line2)}
#report .rv3-flowtop .annual-score-grid{margin-top:8px}
#report .rv3-flowtop .rv3-tw{margin-bottom:0}
#report .annual-line-chart .year-axis{font-size:15px}

/* ==== companion.css ==== */
/* Keep the previous warm palette, fonts and report layout. Only navigation and traits are extended. */
:root{--surface:var(--bg);--surface-soft:var(--field)}
#brandbar{justify-content:center!important;background:var(--bg)!important;opacity:1}
#brandbar .brandbar-brand{position:absolute;left:50%;transform:translateX(-50%)}
#brandbar .bar-actions{margin-left:auto!important}.brandbar-mark{background-image:url('img/mascot.webp')!important}
#accountName{display:none!important}.account-sheet #accountMember[hidden]{display:none!important}
.account-sheet{width:min(94vw,480px);max-height:82svh;overflow:auto;border:1px solid var(--line);border-radius:24px;padding:24px;background:var(--surface);color:var(--fg)}
.account-sheet::backdrop{background:#493c3455}.account-sheet header{display:flex;align-items:center;justify-content:space-between}.account-sheet header h2{font-size:22px}.account-sheet header button{padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg)}
.account-sheet .acct-pop{position:static!important;display:flex!important;flex-direction:column;box-shadow:none!important;width:100%!important;min-width:0!important;background:var(--surface)!important;border:0!important;padding:16px 0!important}
.account-sheet .acct-pop button,.account-sheet .acct-item{padding:14px;text-align:left;background:var(--surface)!important;color:var(--fg);border-bottom:1px solid var(--line);font-size:15px}
.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:10020;display:grid;grid-template-columns:1fr 1.5fr 1fr;padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}
.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:transparent;border:0;color:var(--muted);font-size:12px;min-height:52px;cursor:pointer}.bottom-nav button>span{font-size:26px;line-height:26px;height:26px}.bottom-nav button[aria-current]{color:var(--fg);font-weight:600}
body{padding-bottom:86px}.report{padding-bottom:100px!important}.site-legal{padding-bottom:100px}
.nav-topics .res-tabs,.nav-topics #tab-natal,.nav-topics #tab-flow,.nav-topics #tab-today{display:none!important}
.nav-topics .topic-fold{margin:0}.nav-topics .res-nav{position:relative!important;top:auto!important}
.trait-quadrant{margin:16px 0;padding:20px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}
.trait-quadrant figcaption{font-size:18px;font-weight:600;text-align:center}.trait-quadrant svg{display:block;width:100%;max-width:440px;margin:12px auto}.trait-quadrant svg text{font:14px var(--body);fill:var(--ink2)}
.quadrant-paper{fill:var(--surface-soft)}.quadrant-axis{stroke:var(--line2);stroke-width:1.5}.quadrant-point{fill:var(--work);stroke:var(--surface);stroke-width:4}
.trait-quadrant p{font-size:13px}.trait-quadrant small{font-size:12px;color:var(--muted);display:block;line-height:1.7}
/* Topic discovery and account sheet remain independent of the old header dropdown. */
body.nav-topics #result{display:block!important}body.nav-topics .topic-fold{display:block!important}body.nav-topics .hero{display:none!important}
.account-sheet .acct-pop{visibility:visible!important;opacity:1!important;transform:none!important;max-height:none!important;overflow:visible!important}
#savedProfileSummary{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;margin:20px 0;padding:16px 0;border-block:1px solid var(--line);font-size:14px}#savedProfileSummary dt{font-weight:600}#savedProfileSummary dd{margin:0;overflow-wrap:anywhere}

/* Landing is deliberately text-led: reserve the dog for the small brand mark. */
#landing .landing-grid{display:block!important;max-width:620px;margin:32px auto 0}#landing .landing-copy{text-align:center}#landing .landing-headline{text-align:center}#landing .landing-art{display:none!important}
.trait-quadrant small{color:var(--muted)}
/* Keep decorative imagery as transparent cutouts, without rectangular picture panels. */
.watercolor-welcome,.rc-book::before,.r-cover::before{display:none!important}.rc-book{padding-top:24px}body:not(.app-entered) .brandbar-mark{display:none!important}
/* Compact icon navigation and editorial reading rhythm. */
.bottom-nav{grid-template-columns:repeat(3,1fr);padding-top:3px;padding-bottom:calc(3px + env(safe-area-inset-bottom));background:var(--bg)}.bottom-nav button{min-height:42px;gap:0}.bottom-nav button[aria-current=page]{color:var(--accent-ink)}
body{padding-bottom:54px}.report{padding-bottom:64px!important}.site-legal{padding-bottom:65px}
#landing .landing-shell{max-width:900px;padding:40px 24px 28px}#landing .landing-headline{text-align:left!important;max-width:14em;margin-left:0!important;font-size:clamp(30px,5vw,46px)!important;line-height:1.45}
#landing .landing-grid{display:grid!important;grid-template-columns:1.2fr 1fr;gap:22px;align-items:center;max-width:none;margin:28px 0!important}#landing .landing-copy{text-align:left!important}#landing .landing-art{display:block!important;background:none!important;width:100%;margin:0;aspect-ratio:1!important;border:0;box-shadow:none}#landing .landing-art img{display:block;width:100%;height:auto;max-width:300px;margin:auto}#landing .landing-bottom{margin-left:0!important}
@media(max-width:620px){#landing .landing-grid{grid-template-columns:minmax(0,1fr) 38%;gap:12px}#landing .landing-lead{font-size:14px;line-height:1.9}#landing .landing-questions{font-size:13px;line-height:1.8}#landing .landing-headline{font-size:30px!important}}
#tab-natal .res-h,#tab-flow .blk-h{font-family:var(--body)!important;font-weight:500!important;color:var(--gold-ink)!important;text-align:left;font-size:18px;line-height:1.7;margin:30px 0 16px;padding-top:22px;border-top:1px solid var(--line);background:none}
#tab-natal .r-prose p,#tab-flow .flow-prose p,.past-reading .flow-prose p{font-family:var(--body)!important;font-size:15px;line-height:1.95;text-align:left;margin:0 0 24px;color:var(--fg)}
#tab-flow .flow-prose p:has(>b),.past-reading .flow-prose p{padding:24px 0;border-top:1px solid var(--line)}#tab-flow .flow-prose p>b:first-child,.past-reading .flow-prose p>b:first-child{display:block;color:var(--gold-ink);font-family:var(--body);font-weight:500;font-size:16px;margin-bottom:15px}
.account-sheet .acct-pop{gap:0!important}.account-sheet .acct-pop>button,.account-sheet .acct-item{border-radius:0!important;border-width:0 0 1px!important;padding:16px 0!important;background:none!important;font-size:15px!important}.account-sheet .acct-pop>p{margin:8px 0}#accountWithdraw{color:#a44646!important}#savedProfileSummary{margin:0;padding:16px;background:var(--field);border:0;border-radius:12px}.account-sheet .acct-pop>span{display:flex;gap:12px}.account-sheet .acct-pop>span button{flex:1}#accountMenuStatus:empty{display:none}

/* ==== glass-system.css ==== */
/* Warm editorial content, glass controls: 8 px spacing rhythm. */
:root{--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--glass-bg:rgba(255,253,249,.82);--glass-edge:rgba(255,255,255,.94);--glass-shadow:0 8px 24px rgba(74,53,43,.075),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(74,53,43,.05)}
.wrap{max-width:880px;padding-inline:24px;gap:40px;padding-top:24px}
#result{min-width:0}.tabp{padding-block:8px 32px;scroll-margin-top:88px}
.res-intro{max-width:68ch;margin-inline:auto}.res-intro .res-lead{margin:16px 0 32px;line-height:1.8;letter-spacing:-.025em}
#tab-natal .res-h,#tab-flow .blk-h{margin:32px 0 16px;padding-top:24px;line-height:1.55}
.r-prose p,.flow-prose p{max-width:66ch;word-break:keep-all;overflow-wrap:anywhere;line-height:1.9!important;margin-bottom:24px!important}
.r-agree{padding:0!important;margin:0 0 32px}.r-agree li{padding:20px 0!important;gap:16px}.r-agree small{margin-top:8px;line-height:1.65}
.blk{margin-block:32px}.blk-first{margin-top:16px!important}.blk-p{margin:0 0 24px;line-height:1.8}
.bigchart{gap:20px}.bc-cat{padding:20px;border-radius:20px}.trait-quadrant{padding:24px;margin-block:24px 32px}
.action-box{padding:24px}.act-list{gap:16px}.report-cta{margin-block:40px;padding:32px 24px;border-radius:24px}
.res-topics{gap:12px}.res-topics button{padding:16px!important;text-align:left;min-width:0}.res-topics button strong{line-height:1.5}.res-topics button small{display:block;margin-top:6px;line-height:1.6}
.topic-fold-in{gap:16px;padding-block:8px 16px}.topic-intro{padding:24px!important;margin-bottom:24px!important}.topic-intro p{margin-top:12px}.topic-offer{margin-top:32px;padding:24px}
.ask input,.ask select,.chart-form input,.chart-form textarea{min-height:48px;padding:12px 14px;border-radius:14px}.ask{gap:20px 16px}.f label,.f .lb{margin-bottom:8px}.fnote{margin-top:8px;line-height:1.65}
/* Limit translucent layers to navigation and controls, retaining opaque reading surfaces. */
:is(.top-icon,.res-tabs button,.romance-tabs button,.res-topics button,.to-report,.share-buttons button,.question-submit button,.empty-topic button){background:var(--glass-bg)!important;color:var(--fg)!important;border:1px solid var(--glass-edge)!important;box-shadow:var(--glass-shadow)!important;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);border-radius:16px!important;transition:background .18s ease,box-shadow .18s ease,transform .18s ease;min-height:44px}
.res-tabs{padding:5px;gap:4px;border-radius:20px;background:rgba(231,220,207,.4);border:1px solid rgba(255,255,255,.8)}
.res-tabs button{background:transparent!important;box-shadow:none!important;border-color:transparent!important}.res-tabs button[aria-selected=true],.romance-tabs button[aria-selected=true],.res-topics button[aria-selected=true]{background:rgba(255,253,249,.96)!important;box-shadow:var(--glass-shadow)!important;border-color:rgba(255,255,255,.95)!important;color:var(--gold-ink)!important}
#landingStart,.go>button,.report-cta button{background:linear-gradient(160deg,rgba(250,220,157,.96),rgba(232,185,100,.87))!important;color:#4a352b!important;border:1px solid rgba(255,249,225,.95)!important;box-shadow:0 8px 24px rgba(138,90,30,.13),inset 0 1px 0 #fff8e9,inset 0 -1px 0 rgba(138,90,30,.12)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);min-height:52px;padding:14px 24px!important;border-radius:20px!important}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent-ink)!important;outline-offset:3px}
@media(hover:hover){:is(.top-icon,.res-tabs button,.romance-tabs button,.res-topics button,.to-report):hover{background:rgba(255,255,255,.98)!important;transform:translateY(-1px)}}
.bottom-nav{left:16px;right:16px;bottom:calc(8px + env(safe-area-inset-bottom));max-width:520px;margin-inline:auto;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px 6px!important;border:1px solid var(--glass-edge);border-radius:23px;background:var(--glass-bg)!important;backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);box-shadow:0 8px 32px rgba(74,53,43,.12),inset 0 1px 0 #fff}
.bottom-nav button{min-height:44px;border-radius:17px;color:var(--muted);transition:background .18s ease}.bottom-nav button[aria-current=page]{background:rgba(232,185,100,.18);color:var(--gold-ink);box-shadow:inset 0 1px 0 #fff9}
body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.site-legal{padding-bottom:88px}
body.nav-ask #result{display:block!important}body.nav-ask .hero,body.nav-ask .res-nav,body.nav-ask #result>.res-top,body.nav-ask .tabp:not(#tab-ask){display:none!important}
body.nav-ask #tab-ask{display:block!important}.nav-ask .question-chat{padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.nav-ask textarea{min-height:180px!important;line-height:1.8;resize:vertical}.nav-ask .q-email{margin-top:20px;gap:8px}.nav-ask .question-submit{margin-top:24px;gap:16px;align-items:center}.nav-ask .topic-offer{background:transparent;border:0;padding-inline:0}
.empty-topic{padding:24px;border:1px solid var(--line);border-radius:20px}.empty-topic p{margin-block:16px 24px}
@media(max-width:620px){.wrap{padding-inline:20px;gap:32px}.bigchart{gap:16px}.bc-cat{padding:16px}.report-cta{padding:24px 20px}.topic-intro{padding:20px!important}.nav-ask .question-chat{padding:20px}.res-topics{gap:10px}.res-topics button{padding:14px!important}.r-prose p,.flow-prose p{font-size:15px!important}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){:root{--glass-bg:#fffaf4}}
@media(prefers-reduced-transparency:reduce){:root{--glass-bg:#fffaf4}.bottom-nav,.top-icon,.res-tabs button,.res-topics button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(prefers-reduced-motion:reduce){button{transition:none!important;transform:none!important}}
@media print{.bottom-nav{display:none!important}}
/* Shared layout contract: 12 px title gap, 20 px card inset, 24 px section gap. */
:root{--ui-inset:20px;--ui-section:24px;--ui-title-gap:12px;--ui-copy-gap:16px}
.wrap{gap:var(--ui-section);padding:20px var(--ui-inset) 24px}
#result{display:flex;flex-direction:column;gap:0}
.tabp{padding:0;margin:var(--ui-section) 0 0}
.res-nav{padding:8px!important;border:1px solid rgba(255,255,255,.86)!important;background:rgba(255,253,249,.60)!important;border-radius:22px;box-shadow:0 4px 16px rgba(74,53,43,.035),inset 0 1px 0 #fff;backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}
.res-tabs{padding:4px!important;gap:4px!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.7)!important;background:rgba(255,250,243,.32)!important}
.res-tabs button{min-height:36px!important;padding:8px 10px!important;font-size:14px!important;line-height:1.3;border-radius:12px!important;color:var(--ink2)!important;background:transparent!important;box-shadow:none!important;border-color:transparent!important}
.res-tabs button[aria-selected=true]{background:rgba(255,251,242,.72)!important;color:var(--gold-ink)!important;border:1px solid rgba(255,255,255,.94)!important;box-shadow:0 2px 8px rgba(74,53,43,.045),inset 0 1px 0 rgba(255,255,255,.95)!important;font-weight:600}
.topic-fold{margin:0!important;border:0!important}.topic-fold>summary{padding:8px!important;min-height:44px}.topic-fold-in{padding:12px 8px 8px!important;gap:12px!important}.res-topics{gap:12px!important}.res-topics button{padding:16px!important;min-height:108px;display:flex!important;flex-direction:column;justify-content:flex-start;align-items:flex-start}.res-topics button strong{margin:0!important;line-height:1.5}.res-topics button small{margin:8px 0 0!important;line-height:1.65}.romance-tabs{gap:8px!important;margin:0!important;padding:0!important}.romance-tabs button{min-height:40px;padding:8px 12px!important}
.tabp>.topic{display:flex;flex-direction:column;gap:var(--ui-section);margin:0!important;padding:0!important}
.tabp>.topic>*{margin:0!important}
.topic-intro,.topic-intro.spouse-answer-heading{padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
.topic-intro h3,.spouse-answer-heading h3{margin:0!important;line-height:1.5!important;text-align:left!important;font-size:22px}
.topic-intro p{margin:var(--ui-title-gap) 0 0!important;line-height:1.8!important}
.spouse-preview,.topic-offer,.chart-form{padding:var(--ui-inset)!important;border-radius:20px}
.spouse-preview h4{margin:0 0 16px!important;line-height:1.5}.spouse-preview-content{gap:16px!important}.spouse-preview-copy>p{margin:0 0 12px!important}.spouse-preview-copy .spouse-facts{margin:12px 0!important}.spouse-preview-copy button{margin:12px 0 0!important;min-height:44px}
.topic-answers{margin:0!important;gap:0!important}.topic-answer{padding:20px 0!important;margin:0!important}.topic-answer:first-child{padding-top:20px!important}.topic-answer h4{margin:0 0 var(--ui-title-gap)!important;line-height:1.6!important;font-size:16px!important}.topic-answer p{margin:0!important;line-height:1.8!important}.topic-answer p+p{margin-top:12px!important}
.topic-offer .eyebrow{margin:0!important}.topic-offer h4{margin:8px 0 16px!important;line-height:1.5}.topic-offer ul{margin:0!important;gap:8px}.topic-offer-action{margin:20px 0 0!important;gap:12px}.topic-offer .buy-msg:empty{display:none}
.res-intro .res-lead{margin:16px 0 24px!important;line-height:1.7}
#tab-natal .res-h,#tab-flow .blk-h{margin:24px 0 12px!important;padding-top:20px!important;line-height:1.6}
.r-prose p,.flow-prose p{line-height:1.8!important;margin:0 0 16px!important}.r-prose p:last-child,.flow-prose p:last-child{margin-bottom:0!important}.r-agree{margin:0!important}.r-agree li{padding:16px 0!important}.r-agree small{margin-top:6px}.trait-quadrant{margin:16px 0 24px!important;padding:20px}
.past-reading .flow-prose p,#tab-flow .flow-prose p:has(>b){border-top:0!important;padding:8px 0 12px!important;margin-bottom:12px!important}.past-reading .flow-prose p>b:first-child,#tab-flow .flow-prose p>b:first-child{margin-bottom:10px!important}.past-reading .res-h{border-bottom:0!important}
.blk{margin:24px 0!important}.blk-first{margin-top:0!important}.report-cta{margin:24px 0!important;padding:24px 20px}.action-box{padding:20px}
#result>.disclaimer{margin:24px 0 0!important;padding:20px 0 0!important;line-height:1.8;max-width:none}
.site-legal{margin:24px auto 0!important;padding:24px 20px calc(88px + env(safe-area-inset-bottom))!important}.site-legal nav{margin:12px 0!important;gap:4px 16px}.site-legal p{margin:16px 0 0;line-height:1.8}
#landing .landing-shell{padding:32px 24px 24px}.landing-title-accent{color:var(--fg)!important}
#landing .landing-headline{font-size:clamp(30px,7.1vw,46px)!important;color:var(--fg)!important;white-space:normal!important;max-width:20em!important;line-height:1.4!important;letter-spacing:-.035em;margin:0!important;text-wrap:balance}
#landing .landing-grid{margin:24px 0 0!important;gap:20px}#landing .landing-lead{font-family:var(--body);line-height:1.8;margin:0 0 16px}#landing .landing-questions{font-family:var(--body);line-height:1.8;margin:0}#landing .landing-bottom{margin-top:24px!important}
@media(min-width:760px){:root{--ui-inset:24px;--ui-section:28px}.topic-answers{column-gap:24px!important}}
@media(max-width:380px){.res-tabs button{font-size:13px!important;padding-inline:6px!important}#landing .landing-shell{padding-inline:20px}.res-topics button{padding:14px!important;min-height:112px}}

/* Landing story: full-width introduction, large cutout, closing copy and CTA. */
#landing .landing-shell{max-width:820px;padding:28px 24px 32px}
#landing .landing-story{display:flex;flex-direction:column;align-items:stretch;gap:20px;margin-top:24px}
#landing .landing-lead,#landing .landing-questions{max-width:none;width:100%;margin:0!important;text-align:left;word-break:keep-all;overflow-wrap:anywhere;font:400 15px/1.85 var(--body)}
#landing .landing-mascot{display:flex;justify-content:center;align-items:center;width:100%;margin:0;padding:0;background:none;border:0;box-shadow:none}
#landing .landing-mascot img{display:block;width:clamp(220px,62vw,340px);max-width:85%;height:auto;object-fit:contain}
#landing .landing-bottom{max-width:none;width:100%;margin:24px 0 0!important}#landing .landing-bottom button{width:100%}
@media(min-width:760px){#landing .landing-shell{padding-block:40px}#landing .landing-story{gap:24px}#landing .landing-lead,#landing .landing-questions{font-size:16px}#landing .landing-mascot img{width:340px}}
@media(max-width:380px){#landing .landing-shell{padding-inline:20px}#landing .landing-story{gap:16px}#landing .landing-mascot img{width:230px}}

/* Tighten the result introduction and remove the legacy white trend wrapper. */
.res-nav{margin-bottom:0!important}#tab-natal{margin-top:12px!important;padding-top:0!important}#tab-natal .res-intro{padding-top:0!important}#tab-natal .res-lead{margin-top:0!important}
#tab-natal #result-gate,#tab-natal #graph-content,#tab-natal .blk.act,#tab-natal #actionBody,#tab-natal .act-v2,#tab-natal .act-hd{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
#tab-natal #result-gate{padding:0!important;margin-top:20px!important}#tab-natal .blk.act{padding:0!important;margin:0 0 20px!important}#tab-natal .act-hd{padding:0!important}.act-v2,.place-v2{margin-bottom:20px!important}
.wrap{padding-bottom:8px!important}#result>.disclaimer{margin-top:16px!important;padding-top:12px!important}.site-legal{margin-top:12px!important;padding-top:16px!important;padding-bottom:calc(68px + env(safe-area-inset-bottom))!important}.site-legal nav{margin:8px 0!important;gap:0 14px}.site-legal button{min-height:30px;padding:4px 0}.site-legal p{margin-top:10px!important}body{padding-bottom:0!important}

/* One traits chapter and a concise home reading, with no explanatory white cards. */
#landing{min-height:0!important}#landing .landing-shell{padding-bottom:12px!important}body:not(.app-entered) .wrap{display:none!important}body:not(.app-entered) .site-legal{margin-top:12px!important}
#tab-natal .past-reading .res-h{margin-bottom:8px!important}#tab-natal .past-reading .flow-prose p{padding:4px 0 8px!important;margin-bottom:8px!important;line-height:1.65!important;letter-spacing:-.015em}#tab-natal .past-reading .flow-prose p>b:first-child{margin-bottom:6px!important;font-weight:500}
#tab-natal .home-habits>.res-h,#tab-natal .home-places>.act-h{font:500 18px/1.6 var(--body)!important;color:var(--gold-ink)!important;margin:20px 0 12px!important;padding:18px 0 0!important;border:0;border-top:1px solid var(--line);background:transparent!important}
.home-habit-list{list-style:none;margin:0;padding:0}.home-habit-list li{display:flex;align-items:flex-start;gap:12px;margin:0;padding:12px 0;border-bottom:1px solid var(--line);background:transparent}.home-habit-list li:last-child{border:0}.home-habit-number{flex:none;font-size:13px;line-height:1.8;color:var(--gold-ink)}.home-habit-list b{display:block;font:500 15px/1.7 var(--body);color:var(--fg)}.home-habit-list small{display:block;margin-top:4px;font:400 12px/1.6 var(--body);color:var(--muted)}
#tab-natal .home-places .sit-list{display:block;list-style:none;margin:0;padding:0}.home-places .sit-list li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:4px 12px;margin:0;padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent!important;box-shadow:none}.home-places .sit-list li>span{grid-row:1/3;color:var(--muted);font-size:13px}.home-places .sit-list b{font:500 15px/1.6 var(--body)}.home-places .sit-list small{font-size:12px}.home-places .sit-more{font:400 12px/1.7 var(--body);margin:12px 0 0;color:var(--muted)}
#tab-natal .report-cta{display:block;background:transparent!important;background-image:none!important;color:var(--fg)!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0;padding:20px 0!important;margin:20px 0!important;box-shadow:none}
/* 2026-11-10: 종합 리포트 안내는 장 목록(.rc-toc)을 보여 준다(예전에 숨기던 규칙 제거). */#tab-natal .report-cta h3{font:500 19px/1.5 var(--body)!important;color:var(--fg)!important;margin:4px 0 16px!important}#tab-natal .report-cta h3 #rcName{color:var(--gold-ink)}#tab-natal .report-cta .comprehensive-price{margin:12px 0!important;color:var(--muted)}#tab-natal .report-cta :is(p,small,span,strong,b){color:var(--fg)}
.trait-quadrant{margin-bottom:16px!important}.trait-quadrant svg text{font-size:12px}

.home-habit-list .home-habit-reason{font:400 14px/1.7 var(--body);margin:6px 0!important;color:var(--ink2)}.home-places .feng-explorer{margin-top:16px}.home-places .cp-map{border-radius:16px}.home-places .cp-info,.home-places .cp-list{background:var(--field)}

body.nav-topics .res-nav{margin-top:14px!important}
#tab-natal .trait-quadrant{max-width:360px;width:100%;margin:16px auto 24px!important;padding:16px}.trait-quadrant svg{max-width:300px;margin:8px auto}.trait-quadrant figcaption{font-size:16px}
.account-sheet:not(:modal){position:fixed;inset:0;max-height:calc(100svh - 120px);margin:auto;z-index:11000;box-shadow:0 16px 80px #4a352b33}.account-sheet:not(:modal)::backdrop{display:none}.bottom-nav,dialog .bottom-nav{z-index:12000}
.account-sheet .acct-pop>span[hidden]{display:none!important}#saveProfileEdits{margin-top:12px;width:100%;min-height:46px;border:1px solid var(--line);border-radius:14px;background:var(--field);color:var(--fg);font:500 15px var(--body)}
/* Account is a regular bottom-tab page, not a floating sheet. */
body.nav-account>.wrap,body.nav-account #landing{display:none!important}
:is(#accountSheet,#guidePage).account-page{position:relative!important;inset:auto!important;z-index:auto!important;max-width:var(--app-w,480px);width:100%;max-height:none!important;overflow:visible!important;margin:0 auto!important;padding:24px 20px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;color:var(--fg)}
:is(#accountSheet,#guidePage).account-page header{display:block}:is(#accountSheet,#guidePage).account-page h2{font:400 26px/1.5 var(--display);margin:0 0 12px}:is(#accountSheet,#guidePage).account-page>p{font:400 14px/1.8 var(--body);color:var(--muted);margin:0 0 20px}
.account-page #accountMember{width:100%}.account-page .acct-pop{padding:0!important}.account-page #savedRecordsPanel{margin-top:24px}.account-page #savedRecordsPanel h3{font:500 18px/1.6 var(--body);color:var(--gold-ink);margin:24px 0 12px}
.saved-record{padding:16px 0;margin:0 0 16px;border-top:1px solid var(--line)}.saved-record h4{font:500 16px/1.6 var(--body);margin:0 0 12px}.saved-record dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 12px;font:400 14px/1.7 var(--body);margin:0 0 12px}.saved-record dt{color:var(--muted)}.saved-record dd{margin:0;overflow-wrap:anywhere}.saved-record button{font:500 14px var(--body);padding:10px 16px;min-height:40px;margin-right:8px;border:1px solid var(--line);border-radius:12px;background:var(--field);color:var(--fg)}
#savedPartnersStatus,#savedPersonalRecord{font:400 14px/1.8 var(--body);color:var(--ink2)}

/* Profile editing is a dedicated form view; no old result/question panel underneath. */
body.nav-edit #result{display:none!important}body.nav-edit .hero{display:block!important}body.nav-edit .lede{display:none!important}body.nav-edit .wrap{padding-top:16px!important}
/* One type family and hierarchy across the service. */
:root{--display:var(--body);--latin:var(--body);--type-page:26px;--type-section:18px;--type-subtitle:16px;--type-copy:15px;--type-meta:12px;--text-primary:var(--fg);--text-secondary:var(--ink2);--text-caption:var(--muted);--text-emphasis:var(--gold-ink)}
body,button,input,select,textarea{font-family:var(--body)}
h1,h2,h3,h4,h5,h6,.brandbar-title,.res-lead,.trait-quadrant figcaption{font-family:var(--body)!important;letter-spacing:-.02em}
h1,h2,h3,h4,h5,h6{font-weight:600!important}
#landing .landing-headline{font-family:var(--body)!important;font-weight:600!important}
#brandbar .brandbar-brand{gap:9px!important}#brandbar .brandbar-mark{display:block!important;flex:none;width:36px!important;height:42px!important;background:url('img/mascot.webp') center/contain no-repeat!important}#brandbar .brandbar-title{font-size:18px!important;font-weight:600!important}
#result .blk-h,#result .res-h,#result .act-h,#result .topic-intro h3,#result .topic-offer h4,#result .home-habits>.res-h,#result .home-places>.act-h,#result .report-cta h3{font:600 var(--type-section)/1.6 var(--body)!important;color:var(--text-emphasis)!important;letter-spacing:-.02em}
#result .topic-answer h4,#result .home-habit-list b,#result .home-places h4,#result .spouse-preview h4,.saved-record h4{font:500 var(--type-subtitle)/1.65 var(--body)!important;color:var(--text-emphasis)!important}
#result .r-prose p,#result .flow-prose p,#result .topic-answer p,#result .home-habit-reason,#result .td-prose,#result .td-adv p{font:400 var(--type-copy)/1.8 var(--body)!important;color:var(--text-primary)!important}
#result .res-lead{font-weight:600!important;color:var(--text-primary)}#result .res-lead .destiny-strength{color:var(--text-emphasis)}
#result :is(small,.fine,.r-note,.wk-hint,.td-date,.act-meta){font-family:var(--body)!important;font-size:var(--type-meta)!important;line-height:1.7;color:var(--text-caption)}
#result .home-habit-list{margin:0;padding:0}#result .home-habit-list li{display:block!important;position:relative;padding:4px 0 10px!important;margin:0 0 8px!important;border:0!important;background:transparent!important}.home-habit-number{display:none}.home-habit-list .home-habit-reason{margin:6px 0!important}.home-habit-list small{margin-top:4px}
:is(#accountSheet,#guidePage).account-page h2{font:600 var(--type-page)/1.5 var(--body)!important}:is(#accountSheet,#guidePage).account-page h3{font:600 var(--type-section)/1.6 var(--body)!important;color:var(--text-emphasis)}
#report .r-page h2{font:600 24px/1.5 var(--body)!important}#report .r-page h3{font:600 var(--type-section)/1.6 var(--body)!important}#report .r-page h4{font:500 var(--type-subtitle)/1.6 var(--body)!important}#report .r-page p,#report .r-page li{font:400 var(--type-copy)/1.85 var(--body)!important}#report .r-page :is(b,strong){font-weight:600!important}
.wk-scale{font:11px var(--body);fill:var(--muted)}.wk-v{font-family:var(--body)!important;font-weight:500}.wk-d{font-family:var(--body)!important;font-weight:400}.td-cats b{font-weight:600}

/* Keep the weekly trend close to the daily summary. */
#tab-today #todayHead{margin-bottom:0!important}#tab-today #todayHead+.blk{margin-top:16px!important;padding-top:0!important}#tab-today #weekTitle{margin:0 0 12px!important;padding-top:0!important}#tab-today .week{margin-top:0!important}

/* The editor belongs to the account tab, never the home result container. */
body.nav-edit #accountMember,body.nav-edit #savedRecordsPanel,body.nav-edit #accountSheet>header,body.nav-edit #accountSheet>p,body.nav-edit #accountLogin,body.nav-edit .acct-guide-link{display:none!important}#accountEditor h3{font:600 22px/1.5 var(--body);color:var(--fg);margin:0 0 16px}#accountEditor .askbox{margin:0;width:100%}body.nav-edit>.wrap{display:none!important}
/* Unified birth-information form, including the account-owned editor. */
#askbox{border:1px solid var(--line)!important;border-radius:22px!important;background:rgba(255,253,249,.72)!important;box-shadow:inset 0 1px 0 #fff}
#askbox>summary{padding:14px 18px!important;border-bottom:1px solid var(--line);font:500 14px/1.6 var(--body)}
#ask{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 14px!important;padding:20px!important;align-items:start}
#ask>.f.s2{grid-column:auto!important;min-width:0}#ask>.f.full,#ask>.go{grid-column:1/-1!important}
#ask .f>label:not(.chk),#ask .f>.lb{display:block;margin:0 0 8px!important;font:500 13px/1.5 var(--body);color:var(--fg)}
#ask :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){box-sizing:border-box;display:block;width:100%!important;min-width:0;height:48px!important;min-height:48px!important;padding:11px 12px!important;border:1px solid var(--line2)!important;border-radius:14px!important;background:var(--field)!important;color:var(--fg)!important;font:400 16px/1.5 var(--body)!important;letter-spacing:0!important;box-shadow:inset 0 1px 2px rgba(74,53,43,.025);outline:none}
#ask input:focus-visible,#ask select:focus-visible{border-color:var(--accent-ink)!important;outline:2px solid rgba(31,122,149,.16)!important;outline-offset:2px!important}
#ask input:disabled,#ask select:disabled{opacity:.5;background:rgba(235,227,215,.35)!important}
#ask .seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:14px;background:rgba(235,227,215,.30);min-height:48px}
#ask .seg label{margin:0!important;min-width:0;cursor:pointer}#ask .seg label>span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px 8px!important;border:0;border-radius:10px;background:transparent;color:var(--ink2);font:500 14px/1.4 var(--body)}
#ask .seg input:checked+span{background:rgba(255,251,243,.94)!important;color:var(--gold-ink)!important;box-shadow:0 2px 6px rgba(74,53,43,.055),inset 0 1px 0 #fff}
#ask .fnote,#ask .conv{display:block;margin:8px 0 0!important;font:400 12px/1.65 var(--body);color:var(--muted)}#ask #romanNote{word-break:keep-all}#ask .sub:empty{display:none}
#ask .birth-date-field,#ask .birth-time-field{grid-column:span 1!important;align-self:start}#ask .birth-time-field #in-time{font-variant-numeric:tabular-nums}#ask .birth-date-field .sub{margin-top:8px}
#ask label.chk{display:flex;align-items:flex-start;gap:8px;margin:10px 0 0!important;padding:0!important;min-height:24px;font:400 12px/1.7 var(--body);color:var(--ink2)}#ask label.chk input{width:16px;height:16px;min-height:16px;flex:none;margin:2px 0 0;accent-color:var(--gold-ink)}#ask label.noplace{margin:0 0 12px!important;flex-wrap:wrap}
#ask #placeBox{display:flex;flex-direction:column;gap:10px}#ask .psearch{width:100%}#ask .psel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0!important}#ask #placeNote{margin:0!important}
#ask .placebar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin:0;border-radius:14px;background:rgba(255,251,243,.6);border:1px solid var(--line)}#ask .placebar .pname{font-size:13px;flex:1;min-width:100px}#ask .placebar .coords{display:none}#ask #mapBtn{min-height:36px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--field);color:var(--gold-ink);font:500 12px var(--body)}
#ask .go{margin:4px 0 0!important;display:flex;flex-direction:column;gap:12px}#ask .go>button{width:100%;margin:0!important;min-height:48px!important;font:600 15px/1.5 var(--body)}#ask .save-opt{margin:0!important}#ask .account-note:empty{display:none}#ask .account-privacy{margin-top:12px}
.kakao-data-notice{font:400 12px/1.75 var(--body);color:var(--muted);word-break:keep-all;margin:10px 0 16px;max-width:58ch}
#accountLogin,#saveLogin,#loginSaveGo{font:600 14px/1.5 var(--body);min-height:46px;border:1px solid rgba(90,73,0,.08);border-radius:14px;padding:11px 16px;background:#fee500;color:#191919;cursor:pointer}
#saveLogin{width:100%;margin-top:10px}#accountLogin{min-width:160px}.login-save-dialog{border-radius:22px;padding:24px;max-width:440px;background:var(--bg);color:var(--fg)}.login-save-dialog .kakao-data-notice{padding:12px 14px;border-radius:12px;background:var(--field);margin:12px 0 16px}
@media(max-width:360px){#ask{padding:16px!important;gap:18px 10px!important}#ask :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){padding-inline:10px!important}#ask .f>label:not(.chk),#ask .f>.lb{font-size:12px}}
#ask .go .save-opt{flex:none!important;width:100%}#ask .save-guest{display:block;margin-top:0;gap:0}#ask #saveLogin{background:#fee500!important;color:#191919!important;border:1px solid rgba(90,73,0,.08)!important;border-radius:14px!important;padding:11px 16px!important;min-height:46px!important;text-decoration:none!important;font:600 14px/1.5 var(--body)!important;width:100%;margin-top:10px!important}#ask .go>small{margin:0!important;font:400 12px/1.7 var(--body);color:var(--muted)}

/* Name field stays quiet; segmented choices share the bottom navigation material. */
#ask #romanNote{display:none!important}
#ask .seg{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px!important;padding:4px!important;min-height:48px;border:1px solid rgba(255,255,255,.92)!important;border-radius:17px!important;background:rgba(255,253,249,.74)!important;box-shadow:0 3px 14px rgba(74,53,43,.045),inset 0 1px 0 #fff;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);overflow:visible}
#ask .seg label,#ask .seg label:has(input:checked){display:block!important;position:relative;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:13px;background:transparent!important}
#ask .seg label>span{display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:38px!important;padding:8px 10px!important;border:1px solid transparent!important;border-radius:13px!important;background:transparent!important;box-shadow:none!important;color:var(--ink2)!important;font:500 14px/1.4 var(--body)!important;transition:background .16s ease,box-shadow .16s ease}
#ask .seg input:checked+span{background:rgba(232,185,100,.18)!important;border-color:rgba(255,255,255,.94)!important;color:var(--gold-ink)!important;box-shadow:inset 0 1px 0 #fff9!important}
#ask .seg label:has(input:focus-visible){outline:2px solid var(--accent-ink);outline-offset:2px}
@media(prefers-reduced-motion:reduce){#ask .seg label>span{transition:none}}

#ask .roman-label-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;min-height:20px}#ask .roman-label-row label{font:500 13px/1.5 var(--body);color:var(--fg);margin:0}#romanHelpToggle{flex:none;min-height:24px;min-width:24px;padding:0;border:0;background:none;color:var(--muted);font-size:19px;cursor:pointer}#ask .roman-help{font:400 12px/1.7 var(--body);color:var(--muted);padding:10px 12px;background:var(--field);border:1px solid var(--line);border-radius:12px;margin:0 0 8px}
body.nav-edit #accountEditor .askbox:not([open]){margin-bottom:20px}#reportInfoContent .report-method,#reportInfoContent .report-score{padding:16px 0;border:0;box-shadow:none}

#reportAppendix{width:auto;gap:5px;padding-inline:10px;display:inline-flex;align-items:center;font-size:12px}

/* Hand-drawn poses share the detective's linework and ivory palette. */
.pose{display:inline-block;flex:none;width:100px;aspect-ratio:1;background-image:url('img/mascot-poses-handdrawn.png');background-repeat:no-repeat;background-size:300% 300%;background-position:0 0;pointer-events:none;vertical-align:middle;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.pose-detective{background-image:url('img/mascot-poses.png');background-position:0 0}.pose-happy{background-position:50% 0}.pose-care{background-position:100% 0}.pose-heart{background-position:0 50%}.pose-money{background-position:50% 50%}.pose-note{background-position:100% 50%}.pose-lucky{background-position:50% 100%}.pose-rest{background-position:100% 100%}
.landing-mascot>.pose{width:min(260px,68vw);height:auto;display:block;margin:auto}
#topicFold .topic-pose{width:66px;float:right;margin:-4px -6px 2px 6px}#topicFold [role=tab]{overflow:hidden}#topicFold strong,#topicFold small{position:relative}
.question-pose{width:92px;float:right;margin:0 0 12px 14px}.topic-intro:has(.question-pose){display:flow-root}
.report-cover-pose{display:block;width:148px;margin:0 auto 18px}.report-chapter-pose{width:74px;float:right;margin:0 0 12px 16px}.rv3-ch:has(.report-chapter-pose){display:flow-root}
@media(max-width:380px){#topicFold .topic-pose{width:50px}.report-cover-pose{width:126px}}
@media print{.pose{break-inside:avoid}}

#topicFold .res-topics>[role=tab]{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 12px!important;text-align:center;min-height:154px}
#topicFold .res-topics .topic-pose{width:90px!important;float:none;margin:0!important}#topicFold .res-topics strong{display:block;margin:0!important;text-align:center;font-size:16px;line-height:1.4}
/* Clip only the question mark in the source cell, leaving the face intact. */
.question-pose{clip-path:polygon(0 0,68% 0,68% 27%,100% 27%,100% 100%,0 100%)}

/* Isolated white-fur poses prevent neighboring sprite fragments at small sizes. */
.pose{background-size:contain;background-position:center}
.pose-detective{background-image:url('img/pose-white-detective.webp');background-position:center}
.pose-happy{background-image:url('img/pose-white-happy.webp');background-position:center}
.pose-care{background-image:url('img/pose-white-care.webp');background-position:center}
.pose-heart{background-image:url('img/pose-white-heart.webp');background-position:center}
.pose-money{background-image:url('img/pose-white-money.webp');background-position:center}
.pose-note{background-image:url('img/pose-white-note.webp');background-position:center}
.pose-tired{background-image:url('img/pose-white-tired.webp');background-position:center}
.pose-lucky{background-image:url('img/pose-white-lucky.webp');background-position:center}
.pose-rest{background-image:url('img/pose-white-rest.webp');background-position:center}
#brandbar .brandbar-mark{background-image:url('img/pose-white-detective.webp')!important}

.pose-note{clip-path:polygon(0 0,72% 0,72% 31%,100% 31%,100% 100%,0 100%)}

/* Restore the original question mark while keeping the white-fur asset. */
.question-pose,.pose-note{clip-path:none!important}
/* 입력 폼 가독성·높이 통일 (2026-11-09) */
#ask .f>label:not(.chk),#ask .f>.lb,#ask .roman-label-row label{font:600 14px/1.5 var(--body)!important;color:var(--fg)!important;margin:0 0 8px!important}
#ask :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){min-height:52px;font-size:16px;color:var(--fg)}
#ask :is(input,select)::placeholder{color:#a0907f;opacity:1}
#ask .seg,#ask .seg label>span{min-height:52px!important}
#ask .f{display:flex;flex-direction:column;align-items:stretch}
#ask .f>.chk,#ask .f>.sub{margin-top:10px}
#ask .fnote,#ask .roman-help,#ask .conv,.save-guest,.save-guest .kakao-mini,.kakao-data-notice,.account-note,.save-opt .account-privacy,.save-opt .account-privacy summary{font-size:13px!important;line-height:1.7!important}
#ask .fnote,#ask .roman-help,.save-guest,.kakao-data-notice,.account-note{color:var(--muted)!important}
.kakao-data-notice{margin:8px 0 0}
.save-guest{gap:8px;margin-top:12px}

/* 이름/영문 이름 줄 맞춤 + 생년월일 아래 빈 여백 제거 (2026-11-09) */
#ask .roman-label-row{display:flex;align-items:center;gap:6px;min-height:21px;margin:0 0 8px}
#ask .roman-label-row label{margin:0!important}
#ask #romanHelpToggle{min-height:0!important;height:21px;width:21px;padding:0!important;font-size:16px;line-height:1;border-radius:50%}
#ask .birth-date-field .sub{margin-top:0;min-height:0}
#ask .conv:empty{display:none}
#ask .birth-date-field .sub:not(:has(#leapWrap:not([hidden]))):has(.conv:empty){display:none}
#ask{row-gap:16px}

/* 궁합 종류·모임·초대 링크 (2026-11-09) */
.cmp-kind{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;margin:0 0 10px;border:1px solid var(--line);border-radius:14px;background:var(--field)}
.cmp-kind button{min-height:44px;padding:8px 6px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--ink2);font:600 14px/1.3 var(--body);cursor:pointer}
.cmp-kind button[aria-pressed=true]{background:var(--panel);border-color:var(--gold-ink);color:var(--gold-ink)}
.cmp-kind[hidden]{display:none}.cmp-kind-note{margin:0 0 8px;font-size:13px;line-height:1.7;color:var(--muted)}#tab-match .topic-intro{margin-bottom:10px!important}#tab-match .cmp-form{margin-top:4px}
.cmp-head{display:grid;gap:10px;margin:0 0 12px}
.cmp-head h4{margin:0}
.cmp-askshare{width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--gold-ink);border-radius:999px;background:transparent;color:var(--gold-ink);font:600 13px/1.3 var(--body);cursor:pointer}
.cmp-pair:not(:empty){margin:0 0 14px;padding:12px;border-radius:14px;background:var(--field)}
.cmp-link input{width:100%;min-height:44px;font-size:13px}
.cmp-group-list{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:6px}
.cmp-group-list li{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:var(--field)}
.cmp-group-list li small{color:var(--muted);font-size:12.5px}
.cmp-group-list li .cmp-del{margin-left:auto}
.cmp-roles{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.cmp-roles li{padding:10px 12px;border-radius:12px;background:var(--field);font-size:14px}
.cmp-roles li small{display:block;margin-top:4px;color:var(--muted);font-size:12.5px;line-height:1.65}
@media(max-width:420px){.cmp-kind{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.cmp-kind button{font-size:12.5px;padding:8px 2px}}

/* 2026-11-10 종합 리포트 안내: 한 열, 장 목록 바로 아래 버튼 */
#reportCta.report-cta{display:block;text-align:left;padding:24px 20px}
#reportCta h3{margin:6px 0 16px;line-height:1.35}
#reportCta .rc-toc{margin:0 0 18px}
#reportCta .rc-toc li{padding:8px 0 8px 12px}
#reportCta .rc-toc b{font-size:15px}
#reportCta .rc-toc span{font-size:13.5px;line-height:1.6}
#reportCta .comprehensive-price{margin:0 0 12px}
#reportCta #reportOpen{display:block;width:100%;min-height:50px;font-size:16px}
#reportCta .rc-fine{margin:12px 0 0;font-size:12.5px;line-height:1.7;color:var(--muted);max-width:none}
.linklike{font:inherit;color:var(--gold-ink);background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}
/* 내 정보 > 안내와 약관 */
.acct-guides{margin-top:28px}.acct-guides h3{font:500 17px/1.5 var(--body);margin:0 0 4px}.acct-guides>p{font-size:13.5px;line-height:1.7;color:var(--muted);margin:0 0 12px}
.acct-guide-list{display:grid;gap:8px}
.acct-guide-list button{display:grid;gap:2px;text-align:left;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--fg);font:inherit;cursor:pointer}
.acct-guide-list button b{font-size:15px}.acct-guide-list button span{font-size:13px;color:var(--muted);line-height:1.5}
.acct-guide-list button:hover{border-color:var(--gold-ink)}
#policyDialog .product-table{overflow-x:auto;margin:8px 0 12px}#policyDialog .product-table table{width:100%;border-collapse:collapse;font-size:13.5px}#policyDialog .product-table th,#policyDialog .product-table td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
#policyDialog .product-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:0 0 12px;font-size:14px}#policyDialog .product-dl dt{color:var(--muted)}#policyDialog .product-dl dd{margin:0}
#reportCta .eyebrow{display:inline-block;color:var(--gold-ink);font-size:12px;letter-spacing:.08em}
#reportCta .rc-toc li{border-left:2px solid var(--gold);background:none}
#tab-natal #reportCta button.linklike{display:inline!important;width:auto!important;min-height:0!important;padding:0!important;margin:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;font:inherit!important;font-weight:600!important;color:var(--gold-ink)!important;text-decoration:underline!important}

/* 내 정보 → 안내와 약관 페이지 */
.acct-guide-link{margin:20px 0 0}.acct-guide-link button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--fg);font:600 15px/1.4 var(--body);text-align:left;cursor:pointer}
.acct-guide-link button small{grid-column:1;display:block;font-size:12.5px;font-weight:400;color:var(--muted);line-height:1.5}.acct-guide-link button span{grid-column:2;grid-row:1/3;color:var(--gold-ink)}
.guide-page header{display:flex!important;flex-direction:column;align-items:flex-start;gap:6px}.guide-back{font:500 14px/1 var(--body);color:var(--gold-ink);background:none;border:0;padding:4px 0;cursor:pointer}
.guide-page .acct-guide-list{margin-top:14px}
.saved-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.saved-head h3{margin:0!important}.saved-close{font:500 13px/1 var(--body);color:var(--muted);background:none;border:1px solid var(--line);border-radius:999px;padding:7px 12px;cursor:pointer}
.pair-consent .fine{font-size:12.5px;color:var(--muted);margin-top:6px}

/* Remove standalone star ornaments from reports; preserve mascot artwork. */
#report .rv3-star,#report .r-gem,#report .pstar{display:none!important}
/* 리포트 표지 발행일: 오른쪽 위에 작게 */
#report .rv3-cover{position:relative}
#report .rv3-date{position:absolute;top:14px;right:18px;margin:0;font:400 12px/1.4 var(--body);color:var(--muted);letter-spacing:.02em}
@media print{#report .rv3-date{top:8px;right:10px}}

/* 로그인 상태에서는 안내와 약관을 메뉴 안(로그아웃 아래)에 두고 별도 상자는 숨긴다 */
.account-sheet:has(#accountMember:not([hidden])) .acct-guide-link{display:none}

/* Friendship/group cast: caption, dog, participant name. Sheets remain unchanged. */
:is(#report,.social-result) .social-cast{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 12px;margin:28px 0 32px;align-items:start}
:is(#report,.social-result) .social-cast:has(> :last-child:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
:is(#report,.social-result) .social-dog{margin:0;min-width:0;text-align:center;break-inside:avoid}
:is(#report,.social-result) .social-dog-label{font:700 clamp(13px,2vw,17px)/1.5 var(--body);color:var(--ink);min-height:3em;display:flex;align-items:center;justify-content:center;word-break:keep-all;padding:0 3px}
:is(#report,.social-result) .social-dog-window{position:relative;aspect-ratio:1.22;overflow:hidden;background:#fdf8ef;border-radius:14px}
:is(#report,.social-result) .social-dog-sprite{display:block;position:absolute;left:0;top:-22%;width:100%;aspect-ratio:1;background-size:300% 300%;background-repeat:no-repeat;print-color-adjust:exact;-webkit-print-color-adjust:exact}
:is(#report,.social-result) .social-dog-name{display:block;margin-top:12px;font:700 16px/1.5 var(--body);overflow-wrap:anywhere;color:var(--ink)}
@media(max-width:520px){:is(#report,.social-result) .social-cast{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 10px}:is(#report,.social-result) .social-dog-label{font-size:14px}}
@media print{:is(#report,.social-result) .social-cast{grid-template-columns:repeat(3,minmax(0,1fr))}.social-dog-window{print-color-adjust:exact}}

:is(#report,.social-result) .social-dog-row-0{aspect-ratio:1.18}:is(#report,.social-result) .social-dog-row-0 .social-dog-sprite{top:-18%}
:is(#report,.social-result) .social-dog-row-1{aspect-ratio:1.39}:is(#report,.social-result) .social-dog-row-1 .social-dog-sprite{top:-39%}
:is(#report,.social-result) .social-dog-row-2{aspect-ratio:1.30}:is(#report,.social-result) .social-dog-row-2 .social-dog-sprite{top:-30%}

/* Show original handwritten captions with each full cell, then the participant name. */
:is(#report,.social-result) .social-dog-label{display:none}
:is(#report,.social-result) .social-dog-window{aspect-ratio:1!important;background:#fdf8ef;border-radius:0}
:is(#report,.social-result) .social-dog-sprite{top:0!important;aspect-ratio:1}
.social-result{max-width:900px;margin:20px auto;color:var(--ink)}
.social-result .rv3-tw{overflow-x:auto;margin-top:28px}
.social-result .social-role-table{width:100%;table-layout:fixed;border-collapse:collapse;font:400 14px/1.7 var(--body)}
.social-result .social-role-table caption{text-align:left;margin-bottom:12px;font-weight:700}
.social-result .social-role-table th,.social-result .social-role-table td{text-align:left;vertical-align:top;padding:14px 10px;border-bottom:1px solid var(--line);word-break:keep-all;overflow-wrap:anywhere}
.social-result .social-role-table thead th{color:var(--gold);border-top:1px solid var(--line)}
.social-result .social-role-table tbody th{font-weight:700}

/* Compact group controls with separate selection and deletion targets. */
:is(#cmpGroup,.friend-controls) .cmp-form{padding:20px;margin-top:16px;border-radius:18px}
:is(#cmpGroup,.friend-controls) .cmp-form h4{font-size:17px;margin:0 0 14px}
.cmp-kind{max-width:380px;gap:3px;border-radius:12px}
.cmp-kind button{min-height:40px!important;padding:7px 12px!important;font-size:13px!important;margin:0!important}
:is(#cmpGroup,.friend-controls) .cmp-head{gap:10px;align-items:center;flex-wrap:wrap}
:is(#cmpGroup,.friend-controls) .cmp-askshare{width:auto!important;min-height:36px!important;font-size:12px!important;padding:6px 10px!important;margin:0!important}
:is(#cmpGroup,.friend-controls) .cmp-saved ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;overflow-y:auto;padding:2px}
:is(#cmpGroup,.friend-controls) .cmp-saved li{min-width:0;display:flex;gap:3px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--field)}
:is(#cmpGroup,.friend-controls) .cmp-load{flex:1;min-width:0;width:auto!important;min-height:54px!important;margin:0!important;padding:8px!important;border:0!important;border-radius:0!important;font-size:13px!important;box-shadow:none!important;background:transparent!important;gap:1px}
:is(#cmpGroup,.friend-controls) .cmp-load b{overflow-wrap:anywhere;line-height:1.4}:is(#cmpGroup,.friend-controls) .cmp-load small{font-size:11px}
:is(#cmpGroup,.friend-controls) .cmp-load:disabled{opacity:.45;cursor:default}
:is(#cmpGroup,.friend-controls) .cmp-del{flex:none;width:auto!important;min-width:40px;min-height:40px!important;margin:0!important;padding:5px 7px!important;border:0!important;box-shadow:none!important;font-size:11px!important;background:transparent!important}
:is(#cmpGroup,.friend-controls) .cmp-group-list li{padding:8px 10px;flex-wrap:wrap;gap:4px 8px;font-size:13px}
:is(#cmpGroup,.friend-controls) .cmp-group-list li small{font-size:11px}:is(#cmpGroup,.friend-controls) .cmp-group-list .cmp-del{margin-left:auto!important}
:is(#cmpGroup,.friend-controls) [data-gcalc],#group-form>button[type=submit]{width:100%;min-height:42px!important;padding:9px 14px!important;margin:12px 0 0!important;font-size:14px!important}
#group-form .chart-fields{gap:10px}#group-form input,#group-form select{min-height:40px;font-size:14px}
@media(max-width:360px){:is(#cmpGroup,.friend-controls) .cmp-saved ul{grid-template-columns:1fr}}

.group-manual{border-top:1px solid var(--line);padding-top:10px;margin-top:8px}.group-manual summary{cursor:pointer;font:600 13px/1.5 var(--body);padding:10px 2px;color:var(--gold-ink)}.group-manual[open] summary{margin-bottom:10px}

.cmp-kind{width:100%;max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));box-sizing:border-box}
.cmp-kind button{width:100%;box-sizing:border-box}
.friend-controls .cmp-form{padding:20px;margin-top:16px;border-radius:18px}
.friend-controls .chart-fields{gap:10px}.friend-controls input,.friend-controls select{min-height:40px;font-size:14px}
.friend-controls button[type=submit]{min-height:42px!important;padding:9px 14px!important;font-size:14px!important}

.friend-input-toggle,.group-members-toggle{margin:12px 0;border:1px solid var(--line);border-radius:12px;padding:0 12px}.friend-input-toggle>summary,.group-members-toggle>summary{padding:12px 0;cursor:pointer;font:600 14px/1.5 var(--body);color:var(--gold-ink)}.friend-input-toggle[open],.group-members-toggle[open]{padding-bottom:12px}.friend-input-toggle .cmp-saved{margin-top:8px}

.social-placeholder{text-align:center;padding:24px 12px 20px;border:1px solid var(--line);border-radius:20px;background:var(--panel);margin:16px 0 24px}
.social-placeholder h4{font:700 clamp(16px,3.5vw,21px)/1.6 var(--body);margin:0 0 20px;color:var(--ink)}
.mystery-line{display:grid;grid-template-columns:repeat(var(--count),minmax(0,1fr));max-width:560px;margin:auto;gap:12px}
.mystery-character b{display:block;font:700 32px/1.2 var(--body);color:var(--gold-ink);margin-bottom:8px}
.mystery-dog{display:block;aspect-ratio:1;background:#28231f;mask-image:var(--mystery-image);-webkit-mask-image:var(--mystery-image);mask-size:contain;-webkit-mask-size:contain;mask-position:center;-webkit-mask-position:center;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;opacity:.9}
#friendRoleOut .social-result,#cmpGroupOut .social-result{margin-top:0}
#cmpGroup>details{border:1px solid var(--line);border-radius:14px;margin:14px 0;overflow:hidden;background:var(--panel)}
#cmpGroup>details>summary{padding:14px 16px;font:600 14px/1.5 var(--body);color:var(--gold-ink);cursor:pointer}
#cmpGroup>details .cmp-form{margin:0;border:0;box-shadow:none}
#cmpGroup .group-add-panel .cmp-head h4{display:none}

.social-card-image{display:block;width:100%;height:auto;border-radius:18px;border:1px solid var(--line)}
.social-share-button{display:block;width:100%;min-height:46px;margin:14px 0 0;padding:12px;font:700 14px/1.5 var(--body);border:1px solid var(--gold-ink);border-radius:12px;background:var(--panel);color:var(--gold-ink)}
.social-share-status{font-size:13px;color:var(--muted);margin:8px 0}
.askbox.casting form::after{background:transparent url('img/pose-white-note.webp') center/140px 140px no-repeat!important;animation:reading-dog 1.1s ease-in-out!important;z-index:5}
@keyframes reading-dog{0%{opacity:0;transform:translateY(8px)}25%,75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-5px)}}
@media(prefers-reduced-motion:reduce){.askbox.casting form::after{animation:none!important}}

.shared-result-dialog{width:min(900px,94vw);max-height:90vh;overflow:auto;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--ink)}.shared-result-dialog::backdrop{background:#0008}.shared-result-close{display:block;margin-left:auto;padding:8px 14px}.shared-result-dialog a{display:block;margin-top:20px;text-align:center}

.social-reveal{padding:28px;text-align:center;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.social-reveal img{display:block;margin:0 auto 12px;object-fit:contain;animation:blbob 1s ease-in-out infinite}.social-reveal p{font-size:14px;color:var(--muted)}
[data-friend-result],.friend-selection-status{display:none}.friend-controls [data-friend-result]{display:block;width:100%;min-height:44px;margin:10px 0;padding:10px;border-radius:12px;border:1px solid var(--gold-ink);background:var(--panel);color:var(--gold-ink);font:700 14px/1.5 var(--body)}.friend-controls .friend-selection-status{display:block;font-size:13px;color:var(--muted)}.friend-controls .group-manual button[type=submit]{display:none}.friend-controls .cmp-load[aria-pressed=true]{outline:2px solid var(--gold-ink);outline-offset:-2px}
.askbox.casting form::after{background-image:url('img/pose-white-note.png')!important}
@media(prefers-reduced-motion:reduce){.social-reveal img{animation:none}}

.friend-controls .cmp-saved .cmp-load[aria-pressed=true]{background:#f2dbb0!important;box-shadow:inset 0 0 0 2px #915600!important;color:#563000!important;outline:0;position:relative;padding-right:30px!important}
.friend-controls .cmp-load[aria-pressed=true]::after{content:'✓';position:absolute;right:10px;top:12px;font-size:20px;font-weight:800;color:#714500}
.cmp-load:active{transform:scale(.97);transition:transform .1s}
.shared-result-ready{animation:shared-reveal .35s ease-out}@keyframes shared-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.shared-report-chapter{padding:16px 0;border-bottom:1px solid var(--line)}
.askbox.casting form::after{background-image:url('img/pose-white-note.webp')!important}

/* 2026-11-12: 궁합·재회·우정 공통 접기 배치(.cmp-wrap), 모임과 같은 모양 */
.cmp-wrap>details{border:1px solid var(--line);border-radius:14px;margin:14px 0;overflow:hidden;background:var(--panel)}
.cmp-wrap>details>summary{padding:14px 16px;font:600 14px/1.5 var(--body);color:var(--gold-ink);cursor:pointer}
.cmp-wrap>details .cmp-form{margin:0!important;border:0;box-shadow:none;padding:4px 16px 16px!important}
.cmp-wrap .cmp-add-panel .cmp-head h4{display:none}
.cmp-wrap .cmp-head{gap:10px;align-items:center;flex-wrap:wrap}
.cmp-wrap .cmp-saved-h{display:none}
.cmp-wrap .cmp-saved ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;overflow-y:auto;padding:2px;margin:0;list-style:none}
.cmp-wrap .cmp-saved li{min-width:0;display:flex;gap:3px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--field)}
.cmp-wrap .cmp-load{flex:1;min-width:0;width:auto!important;min-height:54px!important;margin:0!important;padding:8px!important;border:0!important;border-radius:0!important;font-size:13px!important;box-shadow:none!important;background:transparent!important;display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.cmp-wrap .cmp-load small{font-size:11px}
.cmp-wrap .cmp-del{flex:none;width:auto!important;min-width:40px;min-height:40px!important;margin:0!important;padding:5px 7px!important;border:0!important;box-shadow:none!important;font-size:11px!important;background:transparent!important}
.cmp-wrap .cmp-saved .cmp-load[aria-pressed=true]{background:#f2dbb0!important;box-shadow:inset 0 0 0 2px #915600!important;color:#563000!important;position:relative;padding-right:30px!important}
.cmp-wrap .cmp-load[aria-pressed=true]::after{content:'✓';position:absolute;right:10px;top:12px;font-size:20px;font-weight:800;color:#714500}
.cmp-wrap [data-friend-result]{display:block;width:100%;min-height:44px;margin:12px 0 0!important;padding:10px;border-radius:12px;border:1px solid var(--gold-ink);background:var(--panel);color:var(--gold-ink);font:700 14px/1.5 var(--body)}
.cmp-wrap .friend-selection-status{display:block;font-size:13px;color:var(--muted);margin:8px 0 0}
.friend-empty{display:none;font-size:13px;color:var(--muted);margin:0}
.cmp-wrap .cmp-saved:empty+.friend-empty{display:block}
.cmp-wrap .cmp-saved:empty~[data-friend-result],.cmp-wrap .cmp-saved:empty~.friend-selection-status{display:none!important}
.cmp-wrap .group-manual button[type=submit]{display:block!important;width:100%;min-height:42px!important;margin:12px 0 0!important}
.cmp-wrap .chart-fields{gap:10px}
.cmp-out:not(:empty){padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--panel);margin:16px 0}
@media(max-width:360px){.cmp-wrap .cmp-saved ul{grid-template-columns:1fr}}
.cmp-out .cmp-open{display:block;width:100%;min-height:46px;margin:14px 0 0;padding:12px;font:700 14px/1.5 var(--body);border:1px solid var(--gold-ink);border-radius:12px;background:var(--panel);color:var(--gold-ink);cursor:pointer}
.cmp-out .cmp-score{text-align:center}

/* ==== product-flow.css ==== */
.entry-goals,.product-compare{margin:20px 0;text-align:left}.entry-goals h2,.report-value h4{font-size:18px;margin:0 0 12px}.entry-goals [role=group],.question-examples{display:flex;flex-wrap:wrap;gap:8px}.entry-goals button,.question-examples button{min-height:44px;border:1px solid currentColor;border-radius:12px;padding:10px 15px;background:transparent;color:inherit;font:inherit;cursor:pointer}.entry-goals button[aria-pressed=true]{background:#795727;color:#fff}.entry-goals p,.question-help,.product-scope>p,.product-compare>p{font-size:14px;line-height:1.7}.product-scope,.report-value{margin:22px 0;padding:18px 0;border-top:1px solid #b8a98c66}.product-scope h4{font-size:17px;margin:0 0 14px}.product-scope dl{margin:0}.product-scope dt{font-weight:700;margin-top:12px}.product-scope dd{margin:5px 0 0;line-height:1.7}.product-compare summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:600}.product-table table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;line-height:1.6}.product-table th,.product-table td{padding:10px 5px;border-bottom:1px solid #b8a98c66;vertical-align:top;overflow-wrap:anywhere}.product-table th:first-child{width:24%}.product-table th:last-child{width:19%}.question-examples{border:0;padding:0;margin:0 0 16px}.question-examples legend{font-weight:700;margin-bottom:12px}.question-examples button{font-size:14px}.landing-shell .product-compare{width:100%;max-width:560px;align-self:center}.landing-shell .entry-goals{width:100%;max-width:560px;align-self:center}
.landing-shell{container-type:inline-size}#landing .landing-headline{width:100%;max-width:100%!important;text-align:center;font-size:clamp(28px,7.5cqw,44px)!important;font-weight:700!important;letter-spacing:-.045em!important;white-space:normal!important;line-height:1.4!important;word-break:keep-all}
:root{--landing-accent:#986025}
html.rd{--landing-accent:#edc36f}
#landing .landing-title-accent{color:var(--landing-accent)!important}
#landing .landing-lead{max-width:34em;margin-inline:auto!important;text-align:center!important;font-size:15px!important;line-height:1.85!important;text-wrap:pretty}#ask>.entry-goals{margin:0 0 12px}#ask>.entry-goals h2{font-size:16px}

/* Shared report offers: one hierarchy for comprehensive and topic reports. */
:root{
 --report-surface:#fffdf9;
 --report-tint:#f8f1e5;
 --report-border:#dfd3c3;
 --report-text:#46382e;
 --report-secondary:#6e5e50;
 --report-accent:#80551c;
 --report-button:#edc36f;
 --report-focus:#79501d;
}
#result #reportCta.report-cta,#result .topic-offer{
 box-sizing:border-box;display:block;margin:28px 0!important;padding:24px!important;
 border:1px solid var(--report-border)!important;border-radius:20px!important;
 background:var(--report-surface)!important;background-image:none!important;
 box-shadow:0 4px 18px #46382e06!important;color:var(--report-text)!important;text-align:left;
}
#result :is(#reportCta,.topic-offer) .eyebrow{
 display:block;margin:0 0 8px;color:var(--report-accent)!important;
 font:600 12px/1.5 var(--body);letter-spacing:.04em;
}
#result #reportCta h3,#result .topic-offer h4{
 margin:0 0 20px!important;color:var(--report-text)!important;
 font:600 20px/1.5 var(--body)!important;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:anywhere;
}
#result #reportCta h3 #rcName{color:inherit}
#result #reportCta .rc-toc,#result .topic-offer>ul{
 display:grid;gap:0;list-style:none;margin:0 0 20px;padding:0;counter-reset:report-item;
}
#result #reportCta .rc-toc li,#result .topic-offer>ul>li{
 counter-increment:report-item;position:relative;min-width:0;margin:0;
 padding:13px 0 13px 34px!important;border:0;border-bottom:1px solid var(--report-border);
 background:none;color:var(--report-text)!important;font:400 15px/1.7 var(--body);
 overflow-wrap:anywhere;word-break:keep-all;
}
#result #reportCta .rc-toc li::before,#result .topic-offer>ul>li::before{
 content:counter(report-item,decimal-leading-zero);position:absolute;left:0;top:15px;
 color:var(--report-accent);font:600 12px/1.7 var(--body);font-variant-numeric:tabular-nums;
}
#result #reportCta .rc-toc b{display:block;color:var(--report-text)!important;font:600 15px/1.6 var(--body)}
#result #reportCta .rc-toc span{display:block;margin-top:4px;color:var(--report-secondary)!important;font:400 14px/1.75 var(--body)}
#result #reportCta .rc-only{
 margin:20px 0;padding:16px;border:0;border-radius:12px;background:var(--report-tint);
 color:var(--report-text)!important;
}
#result #reportCta .rc-only b{display:block;margin-bottom:8px;color:var(--report-text)!important;font-size:14px;line-height:1.6}
#result #reportCta .rc-only ul{margin:0;padding-left:18px;opacity:1;filter:none}
#result #reportCta .rc-only li{color:var(--report-secondary)!important;font-size:14px;line-height:1.8}
#result #reportCta .comprehensive-price,#result .topic-offer-action{
 display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;
 gap:12px;margin:24px 0 0!important;text-align:left;
}
#result #reportCta .comprehensive-price>span{display:none}
#result #reportCta .comprehensive-price strong,#result .topic-offer-action>strong{
 display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;
 font:500 15px/1.7 var(--body);color:var(--report-text)!important;
}
#result :is(#reportCta,.topic-offer) del{color:var(--report-secondary)!important;font-size:14px;font-weight:400}
#result :is(#reportCta,.topic-offer) .free{color:var(--report-text)!important;font-size:26px;line-height:1.3;font-weight:700}
#result :is(#reportCta,.topic-offer) .launch{
 color:var(--report-accent)!important;font:500 12px/1.6 var(--body);
 background:var(--report-tint);padding:4px 8px;border-radius:6px;
}
#result #reportCta #reportOpen,#result .topic-offer-action>button{
 box-sizing:border-box;display:block;width:100%;min-height:50px;margin:14px 0 0;
 padding:13px 18px!important;border:1px solid var(--report-button)!important;border-radius:12px!important;
 background:var(--report-button)!important;color:var(--report-text)!important;
 box-shadow:none!important;backdrop-filter:none;font:600 15px/1.5 var(--body);cursor:pointer;
}
#result .topic-offer-action>button{margin:0}
#result :is(#reportOpen,.topic-offer-action>button):hover{filter:brightness(.97)}
#result :is(#reportOpen,.topic-offer-action>button):focus-visible{
 outline:3px solid var(--report-focus);outline-offset:4px;
}
#result #reportCta .rc-fine,#result .topic-offer .buy-msg{
 margin:14px 0 0;color:var(--report-secondary)!important;font:400 13px/1.8 var(--body);text-align:left;
}
#result #reportCta .rc-fine .linklike{
 display:inline;min-height:0;padding:2px!important;border:0!important;border-radius:0!important;
 background:transparent!important;box-shadow:none!important;backdrop-filter:none;color:var(--report-accent)!important;
 font:inherit;text-decoration:underline;text-underline-offset:3px;
}
#result #reportCta .rc-fine a{color:var(--report-accent);text-underline-offset:3px}
@media(max-width:480px){
 #result #reportCta.report-cta,#result .topic-offer{padding:20px!important;border-radius:16px!important}
 #result #reportCta h3,#result .topic-offer h4{font-size:19px!important}
}

/* Report v4: shared screen/PDF content and readable time labels. */
#report .rv3-table tbody th{word-break:keep-all;overflow-wrap:normal}
#report .rv3-table.fixed tbody th{white-space:nowrap;font-size:13px}
#report .rv3-ch{scroll-margin-top:70px}
#report .report-caution{margin:20px 0;padding:16px;border-left:3px solid var(--report-border);background:var(--report-tint);color:var(--report-secondary);border-radius:8px}
#report .report-caution p{margin:6px 0 0}
#report .rv3-lead{font-weight:600;line-height:1.8}
#report .rv3-ch p{overflow-wrap:anywhere;line-height:1.85}
#guestProfile button,#profileDeleteVisible{min-height:46px;padding:12px 16px;font:inherit;border:1px solid var(--report-border);border-radius:10px;background:var(--report-surface);color:var(--report-text);cursor:pointer}
#guestProfileNote{font-size:14px;line-height:1.8}
@media(max-width:480px){#report .rv3-table{font-size:13px}#report .rv3-table th,#report .rv3-table td{padding:10px 7px}#report .rv3-toc a{min-height:44px}}

body.nav-edit #guestProfile{display:none!important}

#report .report-months{display:grid;gap:16px;margin:24px 0}
#report .report-month{min-width:0;border:1px solid var(--report-border);border-radius:14px;padding:18px;background:var(--report-surface)}
#report .report-month h3{margin:0 0 8px!important;white-space:nowrap;color:var(--report-accent);font-size:18px}
#report .report-month .month-theme{font-weight:600;margin:0 0 10px}
#report .report-month p:last-child{margin-bottom:0}
@media print{#report .report-month{break-inside:avoid}}

/* Dasha table: preserve the two-character pillar and readable age ranges. */
#report .rv3-table:has(caption) tbody th{min-width:3em}
#report .daewoon-table tbody th{white-space:nowrap;word-break:keep-all}
#report .daewoon-table{table-layout:fixed;width:100%}
#report .daewoon-table th:nth-child(1){width:18%}
#report .daewoon-table th:nth-child(2){width:31%}
#report .daewoon-table th:nth-child(3){width:51%}
#report .daewoon-table td{word-break:keep-all;overflow-wrap:anywhere}

#report .daewoon-table .current-tag{display:block;font-size:11px;line-height:1.5;color:var(--report-accent);margin-bottom:4px}#report .daewoon-table .pillar-label{white-space:nowrap}

.report-print-appendix{display:none}@media print{.report-print-appendix{display:block;break-before:page}}

/* Landing copy: keep the complete promise on one centered line. */
#landing #landing-title.landing-headline{display:block!important;width:100%!important;max-width:none!important;text-align:center!important;font-size:clamp(14px,5.3cqw,32px)!important;white-space:nowrap!important;line-height:1.5!important;letter-spacing:-.05em!important;text-wrap:nowrap!important}
#landing .landing-lead.landing-one{max-width:none!important;width:100%!important;text-align:center!important;font-size:clamp(11px,3.15cqw,15px)!important;line-height:1.85!important;word-break:keep-all!important}

/* ==== ui-unify.css ==== */
/* 통일 레이어 (2026-11-11): 버튼 색·선택 상태·누름 효과를 한 규칙으로 맞춘다. 마지막에 불러온다. */
:root{
  --accent-ink:#8A5A1E;--emerald:#8A5A1E;--teal:#B07A35;
  --ui-glass:rgba(255,253,249,.72);--ui-glass-edge:rgba(255,255,255,.9);
  --ui-glass-shadow:0 8px 28px rgba(74,53,43,.10),inset 0 1px 0 #fff;
  --ui-on-bg:rgba(255,255,255,.94);--ui-on-ring:inset 0 0 0 1px rgba(232,185,100,.45);
  --ui-on-shadow:0 2px 10px rgba(138,90,30,.12);
  --ui-btn-bg:rgba(255,253,249,.78);--ui-btn-line:rgba(74,53,43,.12);
}

/* 위 탭(나의 운명·앞으로 10년·이번 주)을 하단 바와 같은 반투명 유리로 */
.res-nav{background:var(--ui-glass)!important;border:1px solid var(--ui-glass-edge)!important;box-shadow:var(--ui-glass-shadow)!important;backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);border-radius:23px!important;padding:4px 6px!important}
.res-tabs{background:transparent!important;border:0!important;padding:0!important}
.res-tabs button,.bottom-nav button{color:var(--muted)!important;font-weight:600}

/* 선택 상태: 위·아래·주제 버튼 모두 같은 흰 알약 + 금색 테 */
.bottom-nav button[aria-current=page],
.res-tabs button[aria-selected=true],
.romance-tabs button[aria-selected=true],
.res-topics button[aria-selected=true]{background:var(--ui-on-bg)!important;color:var(--gold-ink)!important;box-shadow:var(--ui-on-shadow),var(--ui-on-ring)!important;border-color:transparent!important}

/* 누를 때: 살짝 투명해지고 작아짐 */
:is(.bottom-nav button,.res-tabs button,.romance-tabs button,.res-topics button,.top-icon,.cmp-load,.cmp-del,.cmp-askshare,.to-report){transition:background .18s ease,box-shadow .18s ease,transform .12s ease,opacity .12s ease;-webkit-tap-highlight-color:transparent}
:is(.bottom-nav button,.res-tabs button,.romance-tabs button,.res-topics button,.top-icon,.cmp-load,.cmp-del,.cmp-askshare,.to-report):active{opacity:.7;transform:scale(.97)}

/* 보조 버튼(공유해서 입력 요청하기, 저장한 상대, 삭제): 청록 대신 갈색 계열 */
.cmp-askshare,.cmp-load,.cmp-del{background:var(--ui-btn-bg)!important;border:1px solid var(--ui-btn-line)!important;color:var(--fg)!important;border-radius:16px!important;box-shadow:0 1px 0 #fff inset}
.cmp-askshare{color:var(--gold-ink)!important;font-weight:600}
.cmp-load b{color:var(--fg)!important}
.cmp-load small{color:var(--muted)!important}
.cmp-del{color:var(--muted)!important;font-size:14px}
.cmp-load[disabled]{opacity:.5}
.cmp-saved-h{color:var(--muted);font-size:13px;font-weight:600}

/* 주제 칩·카드 글자색은 선택일 때만 금색 */
.res-topics button,.romance-tabs button{color:var(--fg)!important}
.romance-tabs button{font-weight:600}

/* 체크박스·라디오도 같은 색 */
input[type=checkbox],input[type=radio]{accent-color:var(--gold-ink)}

@media(prefers-reduced-transparency:reduce){.res-nav{background:#fffaf4!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(prefers-reduced-motion:reduce){:is(.bottom-nav button,.res-tabs button,.res-topics button):active{transform:none}}

/* 2026-11-12: 첫 화면(랜딩) 가독성 + 상단 바 캐릭터 숨김 */
body:not(.app-entered) #brandbar .brandbar-mark,body.fresh:not(.app-entered) .brandbar-mark{display:none!important}
#landing h1#landing-title.landing-headline{font-size:clamp(28px,8.4cqw,42px)!important;line-height:1.32!important;white-space:normal!important;text-wrap:balance;color:#3E2A20!important;letter-spacing:-.03em!important;word-break:keep-all!important}
#landing .landing-title-accent{color:#A8641E!important}
#landing p.landing-lead.landing-one{font-size:clamp(16px,4.6cqw,19px)!important;line-height:1.75!important;color:#4A352B!important;font-weight:500!important;word-break:keep-all!important}
/* 2026-11-12: '나의 운명' 탭 습관 | 장소 두 칸, 장소 더보기는 #tab-places 페이지 */
.habit-split{display:grid;grid-template-columns:1fr 1fr;gap:0}
.habit-split>section{min-width:0;padding:0 20px}.habit-split>section:first-child{padding-left:0;border-right:1px solid var(--line2)}.habit-split>section:last-child{padding-right:0}
.home-places-mini .place-when{display:block;font-size:12.5px;color:var(--gold-ink);font-weight:600;margin-bottom:2px}
.home-places-mini b{display:block}.home-places-mini small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.places-more{display:block;width:100%;min-height:44px;margin:14px 0 0;padding:10px;border-radius:12px;border:1px solid var(--gold-ink);background:var(--panel);color:var(--gold-ink);font:700 14px/1.5 var(--body);cursor:pointer}
.places-back{background:none!important;border:0!important;box-shadow:none!important;color:var(--gold-ink)!important;font:600 14px var(--body);padding:4px 0!important;margin:0 0 10px;width:auto!important;min-height:0!important;cursor:pointer}
@media(max-width:620px){.habit-split{grid-template-columns:1fr}.habit-split>section{padding:0!important;border:0!important}.habit-split>section+section{margin-top:22px;padding-top:22px!important;border-top:1px solid var(--line2)!important}}
.places-week p{font-size:15px;line-height:1.75;margin:0 0 8px;word-break:keep-all}.places-week .places-sub{font-size:13px;color:var(--muted)}


/* 2026-11-12: 습관|장소 두 칸 위쪽 선은 하나만 */
#tab-natal .habit-split{border-top:1px solid var(--line);padding-top:6px;margin-top:8px}
#tab-natal .habit-split .res-h{border:0!important;padding-top:0!important;margin-top:14px!important}
@media(max-width:620px){#tab-natal .habit-split>section+section{margin-top:18px!important;padding-top:4px!important}}
/* 장소 페이지(전체 화면) */
#tab-places.places-page{position:fixed;inset:0;z-index:60;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--bg,#FFF9F4);padding:72px max(16px,calc(50vw - 380px)) 110px;margin:0!important}
#tab-places.places-page .places-tab{margin:0!important;padding:0!important;border:0;background:transparent}

/* 2026-11-12: 출생지 '지도로 보기' 제거(검색·드롭다운만) */
#mapBtn,#mapbox{display:none!important}

/* ===== 2026-11-12: 첫 페이지 없이 바로 시작(히어로 + 예시 카드 + 입력 폼 한 화면) ===== */
#landing{display:none!important}
body:not(.app-entered) .wrap{display:block!important}
body:not(.fresh):not(.demo) .intro{display:none!important}
body:is(.fresh,.demo) #askbox .edit{display:none}
.intro{margin:4px 0 22px;text-align:center}
.intro-top{display:flex;flex-direction:column;align-items:center}
.intro .intro-dog{width:min(190px,48vw)!important;margin:0 auto 4px!important}
.intro h1{font-family:var(--display);font-size:clamp(27px,6.6vw,40px);line-height:1.32;letter-spacing:-.03em;color:var(--fg);margin:0;word-break:keep-all;font-weight:400}
.intro-accent{color:var(--gold-ink)}
.intro-sub{font-size:16px;line-height:1.6;color:var(--muted);margin:10px 0 0;word-break:keep-all}
.intro-cta{display:flex;align-items:center;justify-content:center;width:min(100%,420px);min-height:54px;margin:18px auto 0;border-radius:999px;font:600 17px var(--body);text-decoration:none;background:linear-gradient(160deg,rgba(250,220,157,.96),rgba(232,185,100,.87));color:#4a352b;border:1px solid rgba(255,249,225,.95);box-shadow:0 8px 24px rgba(138,90,30,.13),inset 0 1px 0 #fff8e9}
.intro-cta:active{opacity:.7;transform:scale(.97)}
.intro-cta:focus-visible{outline:3px solid var(--gold-ink);outline-offset:3px}
/* 결과 홈: 기질 글 '더 읽기', 지나온 날 접기, 리포트 목차 접기 */
.past-fold>summary.res-h{display:flex;align-items:center;min-height:44px}
#result #reportCta .rc-toc li.rc-rest{display:block;counter-increment:none;border-bottom:0;padding:2px 0 0!important}
#result #reportCta .rc-toc li.rc-rest::before{content:none!important;display:none!important}
#result #reportCta .rc-rest .rc-toc{counter-reset:none;margin:0}
.rc-rest summary{font-size:14.5px;padding:10px 0;min-height:44px;display:flex;align-items:center}
.rc-rest .rc-toc{margin:4px 0 0;padding:0}

.ask-title{grid-column:1/-1;font:700 18px/1.4 var(--body);color:var(--fg);margin:2px 0 14px}
body:not(.fresh):not(.demo) .ask-title{display:none}
#ask{scroll-margin-top:76px}

/* ===== 2026-11-12: 입력 전에는 예시 인물 운탐정의 결과(body.demo) ===== */
.demo-note,.demo-end{display:none}
body.demo .demo-note{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 14px;padding:14px 16px;border-radius:16px;background:#fff4dc;border:1px solid #ecd6a8}
.demo-note p{margin:0;flex:1 1 220px;font-size:14px;line-height:1.55;color:var(--fg);word-break:keep-all}
.demo-note p b{display:block;font-size:15.5px}
.demo-note p span{color:var(--muted)}
.demo-note button,.demo-end button{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,249,225,.95);background:linear-gradient(160deg,rgba(250,220,157,.96),rgba(232,185,100,.87));color:#4a352b;font:600 15px var(--body);cursor:pointer}
body.demo #resTitle::after{content:"예시";display:inline-block;margin-left:8px;padding:2px 10px;border-radius:999px;background:#8A5A1E;color:#fff;font:600 12.5px/1.7 var(--body);vertical-align:middle}
body.demo #result-gate,body.demo #unlock-status{display:none!important}
body.demo .demo-end{display:grid;gap:8px;justify-items:center;text-align:center;margin:24px 0 8px;padding:22px 18px;border-radius:18px;background:#fff;border:1px solid #eadfce}
.demo-end p{margin:0;font-size:14.5px;line-height:1.6;color:var(--muted);word-break:keep-all}
.demo-end .demo-end-t{font:700 18px/1.4 var(--body);color:var(--fg)}
.demo-end a{font-size:14px;color:var(--gold-ink);font-weight:600;padding:8px}
body:is(.fresh,.demo) #askbox>summary{font-weight:700;color:var(--gold-ink)}

/* 입력 전: JS가 예시를 그리기 전에도 결과 자리를 잡아 두어 꼬리말이 밀리지 않게(CLS). 공유 잠금 영역은 실제 결과에서만. */
body.fresh #result{display:block}
body.fresh:not(.demo) #result{min-height:130vh}
body.fresh #result-gate,body.fresh #unlock-status{display:none!important}
.intro img.intro-main{display:block;width:min(200px,50vw);height:auto;aspect-ratio:1;margin:0 auto 6px;border-radius:28px;}
body.demo #askbox:not([open]){display:none}

/* ==== demo-ui.css ==== */
/* 2026-11-13: 예시(운탐정) 결과를 스크롤하는 동안 위에 '예시' 띠를 띄운다(body.demo + 결과 영역이 화면에 있을 때). */
.demo-ribbon{display:none}
body.demo.dui-show .demo-ribbon{display:flex;position:fixed;top:56px;left:12px;right:12px;max-width:560px;margin:0 auto;z-index:60;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:12px;background:#4A352B;color:#FFF9F4;font-size:13.5px;font-weight:600;word-break:keep-all;box-shadow:0 6px 16px rgba(74,53,43,.25)}
.demo-ribbon button{flex:none;min-height:34px;padding:0 12px;border-radius:999px;border:0;background:#f2c45a;color:#4A352B;font:inherit;font-weight:700;cursor:pointer}
@media print{.demo-ribbon{display:none!important}}
/* 2026-11-13: 가격은 구매 화면에서만 (버튼 옆 가격 숨김) */
.topic-offer-action>strong,.cmp-price,#reportCta .comprehensive-price{display:none!important}

/* ==== topic-timing.css ==== */
/* 2026-11-13: 직업·학업 '언제 잘 될까?' 상자 */
.tt-box{margin:4px 0 20px;padding:18px 16px 14px;border-radius:18px;background:#fff;border:1.5px solid #f2c45a;box-shadow:0 6px 18px rgba(74,53,43,.07)}
.tt-box h4{margin:0 0 6px;font:400 19px/1.3 Jua,sans-serif;color:#4A352B}
.tt-lead{margin:0 0 14px;display:flex;flex-direction:column;gap:2px}
.tt-lead span{font-size:13.5px;color:var(--muted,#7a6457)}
.tt-lead strong{font-size:22px;line-height:1.3;color:var(--gold-ink,#8A5A1E);word-break:keep-all}
.tt-lead small{font-size:13px;font-weight:500;margin-left:2px;color:var(--muted,#7a6457)}
.tt-bars{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(10,1fr);gap:4px;height:120px;align-items:end}
.tt-bar{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.tt-bar i{display:block;width:100%;max-width:22px;border-radius:6px 6px 2px 2px;background:#eadfcf}
.tt-bar.on i{background:linear-gradient(#f7d98a,#e2a93a)}
.tt-bar.low i{background:#d9cbb8}
.tt-bar b{order:-1;font-size:10.5px;font-weight:600;color:var(--muted,#7a6457);margin-bottom:2px}
.tt-bar.on b{color:var(--gold-ink,#8A5A1E);font-weight:800}
.tt-bar span{margin-top:4px;font-size:11px;color:var(--muted,#7a6457)}
.tt-facts{margin:0 0 10px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tt-facts div{padding:10px 12px;border-radius:12px;background:#FFF6E6}
.tt-facts dt{font-size:12px;color:var(--muted,#7a6457)}
.tt-facts dd{margin:2px 0 0;font-size:15px;font-weight:700;color:#4A352B;word-break:keep-all}
.tt-note{margin:0;font-size:12.5px;line-height:1.55;color:var(--muted,#7a6457);word-break:keep-all}
@media (max-width:400px){.tt-facts{grid-template-columns:1fr}.tt-bar b{font-size:9.5px}}
.tt-fix{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:#FFF1EC;font-size:14px;line-height:1.6;color:#4A352B;word-break:keep-all}
.tt-fix span{display:block;margin-top:4px;font-weight:600;color:#8A5A1E}
.tt-chart{margin:0 0 12px}.tt-chart svg{display:block;width:100%;height:auto}
/* 2026-11-13: 실제 리포트 목차 미리보기 */
ul.toc-real{counter-reset:toc}

/* ==== touch-card.css ==== */
/* 2026-11-13: 관계 캐릭터 카드 안 '우리가 오래가는 작은 습관' + 접기 안 근거 */
.tc-wrap{margin:14px 0 4px;text-align:left}
.tc-head{margin:0 0 8px;text-align:center;font:400 17px/1.3 Jua,sans-serif;color:#8A5A1E}
.tc-list{list-style:none;counter-reset:tc;margin:0;padding:0;display:grid;gap:8px}
.tc-list li{counter-increment:tc;position:relative;display:flex;flex-direction:column;gap:2px;padding:11px 14px 11px 50px;border-radius:14px;background:#fff;word-break:keep-all}
.tc-list li::before{content:counter(tc);position:absolute;left:14px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#FCE7E3;color:#D0587A;font:400 15px Jua,sans-serif}
.tc-list b{font-size:15px;font-weight:700;color:#4A352B;line-height:1.4}
.tc-list small{font-size:13px;color:#9a6a5c;line-height:1.4}
.tc-why{margin-top:10px;line-height:1.7}
.pair-basis .tc-more{margin-top:12px}

/* ==== ui-cta.css ==== */
/* 2026-11-13: 리포트 보기·궁합/우정/모임 확인·결제 버튼을 첫 화면 '내 정보로 확인하기'와 같은 모양으로 통일한다(맨 마지막에 로드).
   주 버튼 = 금색 그라데이션 알약, 보조 버튼 = 크림 바탕 + 갈색 선 알약. */
:is(#reportOpen,.topic-offer-action button,.cmp-open,[data-friend-result],.cmp-form button[type=submit],[data-gcalc],#reportCheckout,.demo-end button,.fd-cta:not(.fd-cta-sub)):not(#_a):not(#_b):not(#_c):not(#_d){
 display:flex!important;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;width:100%;max-width:420px;min-height:54px!important;margin-left:auto;margin-right:auto;padding:0 22px!important;
 border-radius:999px!important;border:1px solid rgba(255,249,225,.95)!important;background:linear-gradient(160deg,rgba(250,220,157,.96),rgba(232,185,100,.87))!important;
 color:#4A352B!important;font:600 17px/1.2 "IBM Plex Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif!important;letter-spacing:0;
 box-shadow:0 8px 24px rgba(138,90,30,.13),inset 0 1px 0 #FFF8E9!important;cursor:pointer;transition:opacity .15s,transform .15s}
:is(#reportOpen,.topic-offer-action button,.cmp-open,[data-friend-result],.cmp-form button[type=submit],[data-gcalc],#reportCheckout,.demo-end button,.fd-cta):active{opacity:.7;transform:scale(.97)}
:is(#reportOpen,.topic-offer-action button,.cmp-open,[data-friend-result],.cmp-form button[type=submit],[data-gcalc],#reportCheckout,.demo-end button,.fd-cta):disabled{opacity:.45;cursor:not-allowed;transform:none}
:is(.cmp-askshare,.fd-cta-sub):not(#_a):not(#_b):not(#_c):not(#_d){display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:100%;max-width:420px;min-height:48px!important;margin:12px auto 0;padding:0 20px!important;
 border-radius:999px!important;border:1.5px solid rgba(138,90,30,.45)!important;background:#FFFDF9!important;color:#8A5A1E!important;font:600 15.5px/1.2 "IBM Plex Sans KR",sans-serif!important;box-shadow:none!important;cursor:pointer}
.topic-offer-action{display:block!important}

/* ==== report-table.css ==== */
/* 2026-11-13: 리포트 표 가독성. 셀 길이에 따라 nw(4자 이하, 줄바꿈 없음) / md(5~9자) / lg(10자 이상) 클래스를 붙이고(approvedReportHTML의 dataTableHTML),
   글자 단위로 쪼개지지 않게 단어 단위 줄바꿈. 첫 칸(연도 등)은 줄바꿈 없이 좁게, '2026년'은 '26년'으로 표시. */
#report .rv3-table th,#report .rv3-table td{overflow-wrap:normal!important;word-break:keep-all!important}
#report .rv3-table .nw,#report .rv3-table tbody th{white-space:nowrap!important;width:1%}
#report .rv3-table:not(.fixed) td.md{min-width:4.2em!important}
#report .rv3-table:not(.fixed) td.lg{min-width:6.5em!important}
#report .rv3-table thead th:not(.nw){white-space:normal}

/* ==== destiny-characters.css ==== */
.destiny-character{margin:0 0 26px;padding:24px 16px 20px;text-align:center;border-bottom:1px solid var(--line2);background:#fff7ed;border-radius:22px;color:#4a352b}.character-eyebrow{margin:0;font:500 12px/1.6 var(--body);color:#986025;letter-spacing:.04em}.character-art{width:240px;max-width:100%;aspect-ratio:1;margin:10px auto 0;background-image:url('img/characters-v1.webp');background-size:600% 600%;background-repeat:no-repeat}.destiny-character h2{margin:0 0 12px!important;font:700 25px/1.4 var(--body)!important;color:#80551c!important}.character-description{font:400 15px/1.8 var(--body);margin:0;word-break:keep-all}.character-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:16px 0}.character-tags span{padding:5px 12px;border-radius:20px;background:#f0e3cd;color:#80551c;font-size:12px}.character-basis{max-width:400px;margin:14px auto 0;font:400 12px/1.8 var(--body);color:#715c4b}.character-basis summary{cursor:pointer;padding:8px}.character-basis p{text-align:left}.character-basis summary:focus-visible{outline:2px solid #80551c;outline-offset:3px}@media(max-width:380px){.character-art{width:210px}.destiny-character h2{font-size:23px!important}}.destiny-character .character-art{margin:-18px auto -20px}.destiny-character{padding-top:18px}
.destiny-character .character-art{transition:opacity .35s}.destiny-character .character-art[data-loading]{background-image:url('img/pose-white-note.webp')!important;background-size:58% auto!important;background-position:center!important;animation:blbob 1s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.destiny-character .character-art[data-loading]{animation:none}}


.destiny-character .character-penguin-art{background-image:none;background-size:auto;margin:0 auto 8px}.character-penguin-art img{display:block;width:100%;height:100%;object-fit:contain}.social-dog .social-penguin-image{display:block;width:100%;max-width:220px;height:auto;aspect-ratio:1;object-fit:contain;margin:auto;border-radius:14px}
:is(#report,.social-result) .social-dog[data-character-kind="penguin"] .social-dog-label{display:flex;min-height:3em;font-size:clamp(13px,2vw,17px)}
