
/* 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}
