@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@400;700&family=IBM+Plex+Mono:wght@400;500&display=swap");

/* 본 화이트 + 먹색. Entire Studios / Yeezy 계열의 절제된 톤 */
:root{--bg:#e8e4dc;--ink:#161513;--sub:#6b665d;--line:#161513;--ghost:#d6d0c5;
--serif:"Noto Serif KR","AppleMyungjo",serif;--sans:"Pretendard",-apple-system,"Apple SD Gothic Neo",sans-serif;
--mono:"IBM Plex Mono",Menlo,monospace}
@media (prefers-color-scheme:dark){:root{--bg:#141311;--ink:#e8e4dc;--sub:#9a948a;--line:#e8e4dc;--ghost:#26241f}}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.65;letter-spacing:-.01em;
word-break:keep-all;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}
/* 필름 그레인 */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.07;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit}

.top{display:flex;justify-content:space-between;align-items:baseline;max-width:680px;margin:0 auto;padding:22px 16px 14px;
border-bottom:1px solid var(--line);font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.logo{text-decoration:none;font-weight:500}
.top nav a{text-decoration:none;margin-left:14px}
.top nav a:hover{text-decoration:underline}

.wrap{max-width:680px;margin:0 auto;padding:0 16px 56px}

.hero{position:relative;padding:56px 0 40px;overflow:hidden;isolation:isolate}
.hero .ghost{position:absolute;right:-6px;top:28px;writing-mode:vertical-rl;font-family:var(--serif);font-size:150px;line-height:1;color:var(--ghost);
z-index:-1;user-select:none}
.hero .kicker,.label{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--sub)}
.hero h1{font-size:44px;line-height:1.12;font-weight:800;letter-spacing:-.035em;margin:14px 0 18px}
.hero h1 span{font-family:var(--serif);font-weight:700;letter-spacing:-.02em}
.hero p{margin:0;font-size:17px;color:var(--sub);max-width:30em}

.card{border-top:1px solid var(--line);padding:28px 0 8px;margin:0}
.card h2{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 18px;font-size:22px;font-weight:800;letter-spacing:-.03em}
.card h2 small{white-space:nowrap;margin-left:12px;font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.08em;color:var(--sub);text-transform:uppercase}
.card.hl{background:var(--ink);color:var(--bg);padding:28px 22px 24px;margin:28px 0;border:0}
.card.hl h2 small{color:inherit;opacity:.6}

.row{display:flex;gap:10px;margin-bottom:14px}
.row label{flex:1;display:flex;flex-direction:column;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;
text-transform:uppercase;color:var(--sub)}
.row label.chk{flex-direction:row;align-items:center;gap:8px}
input,select{font-family:var(--sans);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;
color:var(--ink);padding:10px 0;font-size:20px;font-weight:600;width:100%;-webkit-appearance:none;appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);
background-position:calc(100% - 10px) 55%,calc(100% - 5px) 55%;background-size:5px 5px;background-repeat:no-repeat}
select option{color:#161513;background:#e8e4dc}
input::placeholder{color:var(--ghost)}
input:focus,select:focus{outline:none;border-bottom-width:2px}
input[type=checkbox]{width:auto;-webkit-appearance:auto;appearance:auto}

button,.btn2{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;border-radius:0;
padding:20px 22px;margin-top:10px;font-family:var(--sans);font-size:17px;font-weight:700;cursor:pointer;
background:var(--ink);color:var(--bg);text-decoration:none;letter-spacing:-.01em}
button::after,.btn2::after{content:"→";font-family:var(--mono)}
button:active{transform:translateY(1px)}
.btn2{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn2::after{content:""}
.card.hl .btn2{color:var(--bg);border-color:var(--bg)}
.fine{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--sub);margin:14px 0 0}

.pillars{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}
.pillar{text-align:center;padding:14px 4px 16px;border-left:1px solid var(--line)}
.pillar:first-child{border-left:0}
.pillar.me{background:var(--ink);color:var(--bg)}
.pillar small{font-family:var(--mono);font-size:10px;letter-spacing:.1em;opacity:.7}
.pillar b{display:block;font-family:var(--serif);font-weight:700;font-size:44px;line-height:1.1;margin:10px 0 0;color:inherit}
.pillar b i{display:block;font-style:normal;font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.08em;opacity:.65;margin-top:4px}
.pillar.unknown b{opacity:.3}
.wood,.fire,.earth,.metal,.water{color:inherit}
.ilju{margin:18px 0 0;font-size:17px;font-weight:700}

.bar{display:grid;grid-template-columns:64px 1fr 20px;align-items:center;gap:12px;margin:10px 0;font-size:15px}
.bar span{font-weight:600}
.bar em{font-family:var(--mono);font-style:normal;text-align:right;font-size:13px}
.bar div{height:6px;background:var(--ghost)}
.bar i{display:block;height:100%;background:var(--ink)}

.desc{margin:0 0 14px;font-size:17px;line-height:1.75}
.score{font-family:var(--serif);font-size:120px;font-weight:700;line-height:1;letter-spacing:-.04em;margin:8px 0 4px}
.ad{margin:24px 0}

.ddi-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.ddi-grid a{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 8px;text-align:center;
text-decoration:none;font-weight:700;font-size:15px}
.ddi-grid a span{display:block;font-family:var(--serif);font-size:40px;font-weight:700;line-height:1.2}
.ddi-grid a:hover{background:var(--ink);color:var(--bg)}
article p{font-size:18px;line-height:1.8;margin:0 0 14px}

footer{max-width:680px;margin:0 auto;padding:22px 16px 48px;border-top:1px solid var(--line);
font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--sub)}
footer p{margin:0 0 6px}

@media (max-width:420px){.hero h1{font-size:36px}.hero .ghost{font-size:120px}.pillar b{font-size:36px}}
.score small{font-family:var(--mono);font-size:22px;font-weight:400;letter-spacing:0;margin-left:6px;opacity:.6}

/* --- 재미 요소 --- */
.loading{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg)}
.loading span{font-family:var(--serif);font-size:120px;font-weight:700;animation:breathe 1.1s ease-in-out infinite}
.loading p{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;margin-top:18px}
@keyframes breathe{0%,100%{opacity:.25;transform:scale(.94)}50%{opacity:1;transform:scale(1)}}
.pillar b{opacity:0;transform:rotateY(90deg)}
.reveal .pillar b{animation:flip .55s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes flip{to{opacity:1;transform:rotateY(0)}}
.nick{margin:26px 0 6px;opacity:0}
.reveal .nick{animation:rise .6s ease 2.3s forwards}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.nick-name{font-family:var(--serif);font-size:34px;font-weight:700;line-height:1.25;margin:8px 0 6px;letter-spacing:-.02em}
.nick-sub{margin:0;font-size:15px;color:var(--sub)}
.chart svg{width:100%;height:auto;display:block}
.chart text{font-family:var(--mono);font-size:10px;fill:var(--sub)}
.story{width:100%;height:auto;border:1px solid var(--line);display:block;margin-bottom:6px}
.ghostbtn{background:transparent;color:var(--ink);border:1px solid var(--line)}
@media (prefers-reduced-motion:reduce){.pillar b,.nick{opacity:1;transform:none;animation:none!important}}

/* --- 유료 리포트 --- */
.teaser{border:1px solid var(--line);padding:22px 20px 0;position:relative;overflow:hidden}
.teaser-title{font-family:var(--serif);font-weight:700;font-size:20px;margin:0 0 12px}
.teaser p{font-size:16px;line-height:1.8}
.blur{filter:blur(5px);user-select:none;pointer-events:none;-webkit-mask-image:linear-gradient(#000 30%,transparent);mask-image:linear-gradient(#000 30%,transparent)}
.offer{border:1px solid var(--line);border-top:0;padding:20px}
.offer-head{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;font-size:19px}
.offer-head b{font-family:var(--serif);font-size:28px}
.toc{margin:14px 0 4px;padding-left:20px;font-size:14px;color:var(--sub);columns:2;column-gap:20px}
.toc li{margin:2px 0;break-inside:avoid}
.report h1{font-family:var(--serif);font-size:30px;line-height:1.3;margin:28px 0 10px;letter-spacing:-.02em}
.report h2{font-size:20px;font-weight:800;border-top:1px solid var(--line);padding-top:22px;margin:34px 0 12px}
.report p,.report li{font-size:17px;line-height:1.9}
.writing::after{content:"▍";animation:blink 1s steps(1) infinite;margin-left:4px}
@keyframes blink{50%{opacity:0}}

/* --- 상세 결과 (포스텔러 벤치마크) --- */
.h-right{display:inline-flex;align-items:center;gap:10px;margin-left:12px}
.card h2 .h-right small{margin-left:0}
details.term{position:relative;display:inline-block}
details.term summary{list-style:none;cursor:pointer;width:22px;height:22px;border:1px solid var(--line);border-radius:50%;
font:500 12px/20px var(--mono);text-align:center;letter-spacing:0}
details.term summary::-webkit-details-marker{display:none}
details.term[open] summary{background:var(--ink);color:var(--bg)}
details.term p{position:absolute;right:0;top:30px;z-index:20;width:min(300px,80vw);margin:0;padding:14px 16px;
background:var(--ink);color:var(--bg);font:400 14px/1.7 var(--sans);text-transform:none;letter-spacing:0;text-align:left}
.note details.term p{left:0;right:auto}
.desc.note{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-family:var(--mono);font-size:12px;color:var(--sub)}
.more{display:block;margin:6px 0 18px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:10px}
.table-wrap{overflow-x:auto;margin:0 -2px}
table.myeongsik{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center;font-size:12px}
.myeongsik th,.myeongsik td{border:1px solid var(--line);padding:6px 2px;vertical-align:middle}
.myeongsik thead th{font-family:var(--mono);font-weight:500;font-size:11px}
.myeongsik tbody th{width:52px;font-family:var(--mono);font-weight:500;font-size:10px;color:var(--sub)}
.myeongsik td.me{background:var(--ink);color:var(--bg)}
.myeongsik tr.big td{font-family:var(--serif);font-weight:700;font-size:30px;line-height:1.1;padding:8px 2px}
.myeongsik tr.big td i{display:block;font:400 10px var(--mono);opacity:.7;margin-top:3px;font-style:normal}
.myeongsik td.god{font-weight:700;font-size:12px}
.myeongsik td.sm{font-size:11px;line-height:1.4}
.myeongsik td.hide{font-family:var(--serif);font-size:15px;letter-spacing:.05em}
.animal{display:flex;gap:18px;align-items:center;margin-bottom:14px}
.animal-hanja{font-family:var(--serif);font-weight:700;font-size:52px;line-height:1;writing-mode:vertical-rl;border:1px solid var(--line);padding:10px 8px}
.animal-name{font-family:var(--serif);font-weight:700;font-size:30px;margin:0}
.animal-sub{margin:4px 0 0;font-family:var(--mono);font-size:12px;color:var(--sub)}
table.grid5{width:100%;border-collapse:collapse;margin:16px 0 8px;font-size:14px}
.grid5 td{border-top:1px solid var(--ghost);padding:9px 4px}
.grid5 td.sm{font-size:12px;color:var(--sub)}
.lvl{font-family:var(--mono);font-size:11px;padding:2px 7px;border:1px solid var(--line)}
.lvl-발달,.lvl-과다{background:var(--ink);color:var(--bg)}
.lvl-없음{border-style:dashed;color:var(--sub)}
.tip{display:block;margin-top:6px;font-size:14px;color:var(--sub)}
ul.gods{list-style:none;padding:0;margin:14px 0 6px;border-top:1px solid var(--ghost)}
ul.gods li{border-bottom:1px solid var(--ghost);padding:12px 0}
ul.gods li b{font-size:16px;margin-right:10px}
ul.gods li span{font-family:var(--mono);font-size:11px;color:var(--sub)}
ul.gods li p{margin:6px 0 0;font-size:15px;line-height:1.7}
h3.sub{font-size:15px;margin:20px 0 0;display:flex;gap:8px;align-items:center}
.scale{display:grid;grid-template-columns:repeat(7,1fr);font-family:var(--mono);font-size:11px;text-align:center;margin-bottom:6px}
.scale span{padding:6px 0;border:1px solid var(--ghost);margin-left:-1px;color:var(--sub)}
.scale span.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.meter{position:relative;height:6px;background:var(--ghost);margin:10px 0 18px}
.meter i{position:absolute;top:-5px;width:2px;height:16px;background:var(--ink)}
ul.deuk{list-style:none;padding:0;margin:8px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
ul.deuk li{border:1px solid var(--line);padding:10px 12px}
ul.deuk li b{font-size:15px}
ul.deuk li span{float:right;font-family:var(--mono);font-weight:500}
ul.deuk li.yes{background:var(--ink);color:var(--bg)}
ul.deuk li.na{opacity:.5}
ul.deuk li p{margin:6px 0 0;font-size:12px;line-height:1.55;opacity:.85}
ul.rels{list-style:none;padding:0;margin:0 0 10px}
ul.rels li{border-bottom:1px solid var(--ghost);padding:12px 0;font-size:15px}
ul.rels .tag{display:inline-block;margin-left:8px;font-family:var(--mono);font-size:11px;padding:1px 7px;background:var(--ink);color:var(--bg)}
ul.rels p{margin:6px 0 0;font-size:14px;color:var(--sub)}
ol.daeun{list-style:none;padding:0 0 6px;margin:0;display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory}
ol.daeun li{flex:0 0 64px;scroll-snap-align:center;border:1px solid var(--line);text-align:center;padding:8px 2px;display:flex;flex-direction:column;gap:4px}
ol.daeun li b{font-family:var(--serif);font-size:24px;line-height:1.15}
ol.daeun li span{font-size:11px;line-height:1.4}
ol.daeun li small{font-family:var(--mono);font-size:10px;opacity:.7}
ol.daeun li.on{background:var(--ink);color:var(--bg)}
.hl-line{border-left:3px solid var(--ink);padding-left:12px}
details.faq{border-top:1px solid var(--ghost);padding:14px 0}
details.faq summary{cursor:pointer;font-weight:700;font-size:16px}
details.faq p{margin:10px 0 0;font-size:15px;line-height:1.75;color:var(--sub)}

/* 여백 — editorial redesign */
:root{--bg:#f1eee7;--ink:#282922;--sub:#6f7065;--line:#cccabe;--ghost:#dcd9cf;--accent:#9b412c}
html{scroll-behavior:smooth;scroll-padding-top:30px}body::before{opacity:.035}
.top{max-width:1200px;padding:26px 28px;border-color:var(--line)}.logo{font-family:var(--serif);font-size:23px;letter-spacing:.08em}.top nav{font-family:var(--sans);letter-spacing:0}.top nav a{margin-left:28px;font-size:13px}.home .wrap{max-width:1200px;padding:0 28px 80px}
.cover{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;padding:65px 0 55px;overflow:visible}.cover .kicker{font-size:10px;letter-spacing:.13em}.cover h1{font-family:var(--serif);font-size:76px;font-weight:400;line-height:1.22;letter-spacing:-.065em;margin:33px 0 30px}em{font-style:normal}.cover h1 em{color:var(--accent)}.cover .cover-note{font-family:var(--serif);font-size:21px;color:var(--ink);line-height:1.7}.cover .cover-desc{font-size:14px;line-height:1.9;margin:18px 0 22px;max-width:360px}.cover-cta{display:flex;justify-content:space-between;max-width:330px;text-decoration:none;padding:17px 21px;background:var(--ink);color:var(--bg);font-size:14px}.cover-meta{font-size:11px;color:var(--sub);margin-top:10px}.cover-art{margin:0;align-self:center}.cover-art svg{display:block;width:100%;height:auto}.cover-art figcaption{display:flex;justify-content:space-between;padding-top:13px;font-size:10px;color:var(--sub)}
.manifesto{display:flex;align-items:center;justify-content:space-between;border-block:1px solid var(--line);padding:20px 0;gap:20px}.manifesto span{font-size:10px;color:var(--sub)}.manifesto p{font-family:var(--serif);font-size:20px;margin:0}.manifesto em{color:var(--accent)}.reading-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:70px 0 65px}.reading-intro h2,.section-top h2,.sample-reading h2{font-family:var(--serif);font-size:38px;font-weight:400;line-height:1.45;letter-spacing:-.045em;margin:20px 0}.reading-intro p{max-width:350px;font-size:14px;color:var(--sub);line-height:1.9}.small-seal{display:inline-block;border:1px solid var(--accent);color:var(--accent);font-family:var(--serif);font-size:26px;padding:0 7px;margin-top:12px}.birth-form{padding:0;border-top:0}.form-heading{display:flex;justify-content:space-between;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line);font-size:18px}.form-heading small{font-family:var(--mono);font-size:10px;color:var(--sub)}input,select{font-size:18px;padding:13px 0}.row{gap:24px;margin-bottom:22px}button{font-size:15px;padding:18px 21px}input:focus-visible,select:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.fine{font-family:var(--sans);font-size:12px;letter-spacing:0;line-height:1.7}
.sample-reading{border-block:1px solid var(--line);padding:50px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px 90px}.sample-reading .kicker{grid-column:1/-1}.sample-reading h2{margin-top:8px}.sample-reading em{color:var(--accent)}.sample-body p{font-size:15px;line-height:2;margin:0 0 20px}.sample-body small{font-size:11px;color:var(--sub)}#result{max-width:760px;margin:55px auto 0}.card{padding:32px 0 18px}.card h2{font-family:var(--serif);font-size:25px;font-weight:400}.card.hl{background:#373d34;color:#f1eee7;border-radius:2px;padding:32px}.desc{font-size:16px;line-height:1.95}.pillar.me{background:#373d34}.deep-reading h3{font-family:var(--serif);font-size:22px;font-weight:400;margin:28px 0 12px}.deep-reading p{font-size:16px;line-height:2}.evidence{border-left:2px solid var(--accent);padding:10px 16px;font-size:12px!important;color:var(--sub);background:#e9e6dd}.reflection{padding:18px 20px;background:#e7e8df;margin:24px 0}.reflection small{display:block;font-family:var(--mono);font-size:10px;color:var(--sub);margin-bottom:9px}.reflection p{margin:0}
.editions{padding:70px 0}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px;gap:40px}.section-top p{font-size:13px;color:var(--sub);line-height:1.9}.edition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.edition{border:1px solid var(--line);padding:29px 25px}.edition.featured{background:#e8e9df;border-color:#919881}.edition-number{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--sub)}.edition h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:22px 0 10px}.edition p{font-size:13px;line-height:1.8;min-height:48px;color:var(--sub)}.edition strong{display:block;font-family:var(--serif);font-size:39px;font-weight:400;margin:25px 0}.edition strong small{font-size:14px;margin-left:5px}.edition ul{padding-left:16px;font-size:12px;line-height:2.2;min-height:95px}.edition a{display:block;border-top:1px solid var(--line);padding-top:16px;font-size:12px;text-decoration:none}.faq{border-top:1px solid var(--line);padding-top:35px;max-width:760px;margin:0 auto}.faq h2{font-family:var(--serif);font-size:27px;font-weight:400}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-size:15px}.faq p{font-size:14px;color:var(--sub);line-height:1.9}footer{max-width:1200px;font-family:var(--sans);padding:25px 28px 40px}.teaser{padding-bottom:20px}.offer-head{flex-wrap:wrap;gap:10px}.offer button:disabled{cursor:default;opacity:.55}.story{max-width:360px;margin:0 auto 15px}
@media(min-width:850px){body:not(.home) .wrap{max-width:760px}}
@media(max-width:850px){.cover{gap:35px}.cover h1{font-size:55px}.reading-layout,.sample-reading{gap:40px}.manifesto span:last-child{display:none}.edition{padding:22px 17px}}
@media(max-width:600px){.top{padding:18px 20px}.top nav a{margin-left:18px}.home .wrap{padding:0 20px 50px}.cover{grid-template-columns:1fr;padding:34px 0 30px;gap:25px}.cover h1{font-size:53px;margin:25px 0}.cover .cover-note{font-size:18px}.cover-art svg{max-height:370px}.cover .cover-desc{max-width:none}.cover-cta{max-width:none}.manifesto{align-items:start;flex-direction:column;gap:9px}.manifesto p{font-size:19px}.reading-layout{grid-template-columns:1fr;gap:27px;padding:40px 0}.reading-intro h2{font-size:30px}.reading-intro h2 br{display:none}.small-seal{display:none}.reading-intro p{max-width:none}.sample-reading{grid-template-columns:1fr;gap:10px;padding:35px 0}.sample-reading h2{font-size:30px}.section-top{display:block}.section-top h2{font-size:32px}.edition-grid{grid-template-columns:1fr}.edition{padding:26px}.edition p,.edition ul{min-height:0}.editions{padding:45px 0}.card h2{font-size:21px}.card h2 small{font-size:9px}.card.hl{padding:24px 20px}.row{gap:15px}.nick-name{font-size:29px}.toc{columns:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.cover-art{align-self:start;margin-top:12px}.cover-note{max-width:none!important}.cover-art svg{min-height:0}.deep-reading .fine{font-size:12px} .h-right{display:flex;align-items:center;gap:8px}

@media(max-width:360px){.cover h1{font-size:42px}.top{padding:16px}.logo{white-space:nowrap}.top nav a{margin-left:12px;white-space:nowrap;font-size:11px}}
/* 광고: 콘텐츠와 확실히 구분되게 '광고' 표시 + 위아래 여백. 비어 있으면 자리 차지 안 함 */
aside.ad{margin:36px 0}
aside.ad:has(ins){padding-top:22px;border-top:1px solid var(--ghost);position:relative;min-height:120px}
aside.ad:has(ins)::before{content:"광고";position:absolute;top:4px;left:0;font:500 11px var(--mono);color:var(--sub)}
/* 상품 선택 */
.tiers{display:grid;gap:10px;margin:18px 0 6px}
.tier{position:relative;display:grid;grid-template-columns:1fr auto;gap:4px 12px;width:100%;text-align:left;margin:0;padding:16px 16px 12px;
background:transparent;color:var(--ink);border:1px solid var(--line);font-weight:400}
.tier::after{content:none}
.tier.on{outline:2px solid var(--ink);outline-offset:-2px}
.tier .badge{position:absolute;top:-9px;left:12px;background:var(--ink);color:var(--bg);font:500 11px var(--mono);padding:1px 8px}
.tier-name{font-weight:800;font-size:16px}
.tier-price{font-family:var(--serif);font-size:22px;text-align:right}
.tier-len{grid-column:1/-1;font-size:12px;color:var(--sub)}
.tier .toc{grid-column:1/-1;margin:6px 0 0}
.tier:not(.on) .toc{display:none}
.agree{display:flex;gap:10px;align-items:flex-start;margin:16px 0 4px;font-size:13px;line-height:1.6;color:var(--sub);cursor:pointer}
.agree input{width:18px;height:18px;flex:0 0 18px;margin-top:2px}
.agree a{color:var(--ink)}
#paywall h3.sub{margin:22px 0 10px;font-size:14px;color:var(--sub)}
/* 결과 요약 · 전문 정보 접기 · 상품 접기 */
.summary .sum{display:grid;grid-template-columns:5.5em 1fr;gap:12px 14px;margin:6px 0 18px}
.summary dt{font-size:13px;color:var(--sub);padding-top:2px}
.summary dd{margin:0;font-size:16px;line-height:1.7}
.sum-cta{display:block;border-top:1px solid var(--line);padding-top:14px;font-size:14px;text-decoration:none;font-weight:700}
details.expert>summary{cursor:pointer;list-style:none;display:flex;flex-direction:column;gap:4px}
details.expert>summary::-webkit-details-marker{display:none}
details.expert>summary b{font-size:16px}details.expert>summary b::after{content:" ＋"}
details.expert[open]>summary b::after{content:" －"}
details.expert>summary span{font-size:12px;color:var(--sub)}
details.expert .card{border:0;padding:22px 0 0;margin:0;background:none;box-shadow:none;border-top:1px solid var(--ghost);border-radius:0}
details.more-tiers{margin:6px 0 14px;border-top:1px solid var(--ghost);padding-top:12px}
details.more-tiers>summary{cursor:pointer;font-size:14px;font-weight:700;padding:6px 0}
