/* YEOKJU: one mobile canvas, real HTML copy, undistorted artwork. */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600&display=swap');
:root{--s-gold:#ddc492;--s-cream:#fff4df;--s-night:#091522;--s-serif:'Noto Serif KR',serif;--s-sans:'Noto Sans KR',sans-serif}
html{background:#06101b}
body{max-width:480px!important;margin:0 auto!important;-webkit-text-size-adjust:100%}
body[data-yeokju-screen=home]{background:#091522!important;color:var(--s-cream)}
body[data-yeokju-screen=home]>header{display:none!important}
#yeokjuTempleAtlas{font-family:var(--s-serif);color:var(--s-cream);width:100%!important;max-width:480px!important;margin:0 auto!important;padding:0!important;border:0!important;border-radius:0!important;isolation:isolate;background:linear-gradient(180deg,#08182b22 0,#08132166 20%,#081321c9 55%,#081321 100%),url('sanctuary-world.webp') center top/auto 730px no-repeat,#091522!important;overflow:visible!important;box-shadow:none!important}
#yeokjuTempleAtlas:before,#yeokjuTempleAtlas:after{display:none!important}
#yeokjuTempleAtlas *{box-sizing:border-box}
#yeokjuTempleAtlas button,#yeokjuTempleAtlas a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
#yeokjuTempleAtlas button{font-family:var(--s-serif);cursor:pointer;letter-spacing:0}
#yeokjuTempleAtlas button:focus-visible,#yeokjuTempleAtlas a:focus-visible{outline:2px solid #fff0b9!important;outline-offset:3px}
#yeokjuTempleAtlas [hidden]{display:none!important}
#yeokjuTempleAtlas .s-mast{position:relative;display:flex;align-items:center;gap:10px;min-height:78px;width:100%;padding:calc(12px + env(safe-area-inset-top)) 18px 12px;background:linear-gradient(#071525bb,transparent);border:0;color:var(--s-cream);z-index:3}
#yeokjuTempleAtlas .s-brand{display:flex;align-items:center;gap:7px;color:var(--s-cream);text-decoration:none;white-space:nowrap;font:500 31px/1 var(--s-serif);letter-spacing:.09em}
#yeokjuTempleAtlas .s-compass{font:400 48px/1 Georgia;filter:drop-shadow(0 0 9px #e9cb8e80)}
#yeokjuTempleAtlas .s-motto{display:none}
#yeokjuTempleAtlas .s-nav{display:none}
#yeokjuTempleAtlas .s-nav.is-open{display:flex;position:absolute;top:calc(75px + env(safe-area-inset-top));right:15px;left:15px;flex-direction:column;padding:10px 16px;border:1px solid #bdac8177;background:#081b2bf8;border-radius:9px;box-shadow:0 10px 40px #0008}
#yeokjuTempleAtlas .s-nav button{border:0;background:none;color:#f9edd5;text-align:left;min-height:48px;padding:14px;font-size:14px}
#yeokjuTempleAtlas .s-login{margin-left:auto;border:1px solid #d5bd8d;background:#07132170;color:#fff1d7;border-radius:30px;min-width:75px;min-height:44px;font-size:12px}
#yeokjuTempleAtlas .s-menu{display:block;background:none;border:0;color:#eee1c5;font-size:23px;min-height:44px;min-width:44px}
#yeokjuTempleAtlas .s-intro{text-align:center;padding:28px 12px 26px;text-shadow:0 3px 25px #000,0 2px 6px #000;position:relative}
#yeokjuTempleAtlas .s-eyebrow{font:500 8px/1.7 var(--s-sans);letter-spacing:.18em;color:var(--s-gold);margin:0 0 13px}
#yeokjuTempleAtlas .s-intro h1{font:500 clamp(22px,6.2vw,30px)/1.5 var(--s-serif)!important;letter-spacing:0;color:#fff4dc!important;margin:0;word-break:keep-all}
#yeokjuTempleAtlas .s-intro h1 span{white-space:nowrap}
#yeokjuTempleAtlas .s-divider{display:flex;align-items:center;justify-content:center;gap:15px;color:#edc58b;font-size:18px;margin:10px auto 8px;max-width:280px}
#yeokjuTempleAtlas .s-divider:before,#yeokjuTempleAtlas .s-divider:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#d3b583)}
#yeokjuTempleAtlas .s-divider:after{transform:rotate(180deg)}
#yeokjuTempleAtlas .s-intro>p:last-child{font:400 13px/1.9 var(--s-serif);color:#f4eddf;margin:0}
#yeokjuTempleAtlas .s-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:calc(100% - 28px);margin:0 auto;padding:0 0 25px}
#yeokjuTempleAtlas .s-card{position:relative;overflow:hidden;min-width:0;isolation:isolate;aspect-ratio:.9;border:1px solid #e4cf9da6;border-radius:10px;background:#091625;padding:0;text-align:left;box-shadow:inset 0 0 0 2px #c8ae6555,0 5px 22px #0007;transition:border-color .2s}
#yeokjuTempleAtlas .s-card:first-child{grid-column:span 2;aspect-ratio:1.9}
#yeokjuTempleAtlas .s-card-art,#yeokjuTempleAtlas .s-hero-art{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden}
#yeokjuTempleAtlas .s-card:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#030a11cf,#06101955 57%,#05101b10),linear-gradient(0deg,#030a1199,transparent 60%);z-index:0}
#yeokjuTempleAtlas .s-card:active{border-color:var(--accent);filter:brightness(1.08)}
#yeokjuTempleAtlas .s-card-copy{display:flex;position:relative;flex-direction:column;align-items:flex-start;z-index:1;color:var(--s-cream);padding:15px 13px;height:100%;text-shadow:0 2px 9px #000}
#yeokjuTempleAtlas .s-symbol{font:400 30px/1 Georgia;color:var(--accent);filter:drop-shadow(0 0 8px var(--accent));margin-bottom:5px}
#yeokjuTempleAtlas .s-card-number{font:400 10px/1.6 Georgia;color:#ffefd5;margin:3px 0}
#yeokjuTempleAtlas .s-card-title{font:500 clamp(16px,4.3vw,21px)/1.6 var(--s-serif);white-space:nowrap;color:#fff6e5}
#yeokjuTempleAtlas .s-card-description{font:400 12px/1.65 var(--s-serif);max-width:125px;color:#ece5da;word-break:keep-all;margin:4px 0 10px}
#yeokjuTempleAtlas .s-card-arrow{margin-top:auto;width:29px;height:29px;display:grid;place-items:center;border:1px solid #eee2c2c7;border-radius:50%;font:400 20px/1 Georgia;color:#fff9e9}
#yeokjuTempleAtlas .s-card:first-child .s-card-copy{padding:19px}
#yeokjuTempleAtlas .s-card:first-child .s-card-title{font-size:25px}
#yeokjuTempleAtlas .s-footer{display:flex;position:relative;align-items:center;justify-content:center;gap:11px;flex-wrap:wrap;margin:0;padding:24px 14px calc(28px + env(safe-area-inset-bottom));background:#091522;border-top:1px solid #e4c59135;color:#d3c7b2;font:400 10px/1.8 var(--s-sans)}
#yeokjuTempleAtlas .s-footer-brand{font:400 16px var(--s-serif);width:100%;text-align:center;margin-bottom:5px;color:#d5bc8e}
#yeokjuTempleAtlas .s-footer a{color:#c2b9aa;text-decoration:none;display:flex;align-items:center;min-height:44px}
.sanctuary-dialog-open{overflow:hidden!important}
#yeokjuTempleAtlas .s-dialog{position:fixed;inset:0;z-index:2147483640;background:#030b14fa;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
#yeokjuTempleAtlas .s-detail{position:relative;width:100%;max-width:480px;margin:0 auto;background:color-mix(in srgb,var(--accent) 13%,#07111b);color:#fff5df;box-shadow:0 0 80px #000;padding-bottom:env(safe-area-inset-bottom)}
#yeokjuTempleAtlas .s-detail-bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:calc(6px + env(safe-area-inset-top)) 12px 6px;background:#07121bf2;backdrop-filter:blur(12px);border-bottom:1px solid #cfb98977;font:400 21px var(--s-serif)}
#yeokjuTempleAtlas .s-back{font:500 11px var(--s-sans);color:#f2dfbd;background:transparent;border:1px solid #d9bf8b66;border-radius:25px;padding:8px 12px;min-height:44px}
#yeokjuTempleAtlas .s-detail-hero{position:relative;aspect-ratio:1.08;display:flex;align-items:flex-end;border-bottom:1px solid #dac591;overflow:hidden}
#yeokjuTempleAtlas .s-detail-hero:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#06111bf2, #06161b55 50%,transparent 80%)}
#yeokjuTempleAtlas .s-hero-words{position:relative;z-index:2;width:100%;padding:24px;text-shadow:0 3px 14px #000}
#yeokjuTempleAtlas .s-detail-symbol{font:400 36px/1 Georgia;color:var(--accent)}
#yeokjuTempleAtlas .s-hero-words h2{font:500 34px/1.5 var(--s-serif)!important;color:#fff7e4!important;margin:10px 0}
#yeokjuTempleAtlas .s-rule{display:block;width:40px;height:1px;background:#f5ddab;margin:12px 0}
#yeokjuTempleAtlas .s-detail-label{font:400 16px/1.8 var(--s-serif);color:#fff2dd;word-break:keep-all;margin:0;max-width:290px}
#yeokjuTempleAtlas .s-guide{position:relative;border-bottom:1px solid #d2bc8c;overflow:hidden}
#yeokjuTempleAtlas .s-guide-portrait{position:relative;isolation:isolate;background:#0a1720;aspect-ratio:2/3}
#yeokjuTempleAtlas .s-guide-image{display:block;width:100%;height:100%;aspect-ratio:2/3;object-fit:contain;object-position:center;position:relative}
#yeokjuTempleAtlas .s-guide-portrait:after{content:'';position:absolute;inset:58% 0 0;z-index:0;background:linear-gradient(0deg,color-mix(in srgb,var(--accent) 13%,#07111b),#06141b33 60%,transparent)}
#yeokjuTempleAtlas .s-guide-heading{position:absolute;bottom:0;left:0;right:0;padding:30px 24px 24px;z-index:1;text-shadow:0 2px 14px #0008}
#yeokjuTempleAtlas .s-gem{display:block;font-size:32px;line-height:1;color:var(--accent);filter:drop-shadow(0 0 9px var(--accent))}
#yeokjuTempleAtlas .s-guide h3{font:500 39px/1.4 var(--s-serif)!important;color:#fff7e5!important;margin:6px 0}
#yeokjuTempleAtlas .s-guide-role{font:400 15px/1.7 var(--s-serif);color:#f1e6d0;margin:0}
#yeokjuTempleAtlas .s-guide-words{position:relative;padding:4px 24px 30px}
#yeokjuTempleAtlas .s-guide blockquote{font:400 22px/1.85 var(--s-serif);padding:18px 0;margin:0 0 14px;border:0;border-top:1px solid #dac59177;color:#fff5df;word-break:keep-all}
#yeokjuTempleAtlas .s-guide blockquote:before{content:'“';color:var(--accent);font-size:32px;line-height:1;margin-right:5px}
#yeokjuTempleAtlas .s-tags{display:flex;gap:7px;flex-wrap:wrap}
#yeokjuTempleAtlas .s-tags span{font:400 12px/1.5 var(--s-sans);border:1px solid #f0d9b68c;padding:7px 11px;border-radius:30px;background:#04131b70;color:#f5eadb}
#yeokjuTempleAtlas .s-recommend{margin-top:24px;background:linear-gradient(120deg,#fff8e9f5,#eee0c8ed);color:#30271c;padding:18px;border:1px solid #d5b481;clip-path:polygon(2% 0,98% 0,100% 6%,100% 94%,98% 100%,2% 100%,0 94%,0 6%);text-shadow:none;word-break:keep-all}
#yeokjuTempleAtlas .s-recommend strong{font:600 14px var(--s-serif);color:#32271f}
#yeokjuTempleAtlas .s-recommend p{font:400 14px/1.9 var(--s-serif);margin:8px 0 0;color:#32271f}
#yeokjuTempleAtlas .s-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px;text-align:center;padding:19px 12px;border-bottom:1px solid #ddc59144;font:400 10px var(--s-sans);color:#e2cda7;background:#071720}
#yeokjuTempleAtlas .s-story{padding:0 13px 14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,#0c171b),#0a1b20)}
#yeokjuTempleAtlas .s-story-heading{text-align:center;padding:28px 6px 22px}
#yeokjuTempleAtlas .s-story-heading>span{color:var(--accent);font-size:22px}
#yeokjuTempleAtlas .s-story-heading h3{font:500 23px/1.6 var(--s-serif)!important;color:#fff1d8!important;margin:6px 0}
#yeokjuTempleAtlas .s-story-heading p{font:400 11px/1.9 var(--s-serif);color:#d8cbb8;margin:6px 0;word-break:keep-all}
#yeokjuTempleAtlas .s-comic{position:relative;display:flex;flex-direction:column;margin:0 0 18px;overflow:hidden;border:1px solid #cbb382b3;border-radius:9px;background:#0b1b27;isolation:isolate}
#yeokjuTempleAtlas .s-comic-art{position:relative;display:block;width:100%;height:auto;aspect-ratio:1.8;overflow:hidden;flex-shrink:0}
#yeokjuTempleAtlas .s-narration{padding:18px 20px 6px;word-break:keep-all}
#yeokjuTempleAtlas .s-narration small{font:500 9px/1.7 var(--s-sans);letter-spacing:.06em;color:var(--accent)}
#yeokjuTempleAtlas .s-narration h4{font:500 21px/1.6 var(--s-serif);color:#fff3de!important;margin:8px 0}
#yeokjuTempleAtlas .s-narration p{font:400 15px/1.95 var(--s-serif);color:#f3e9d9;margin:7px 0}
#yeokjuTempleAtlas .s-speech{background:#fff8eaed;color:#36281d;font:400 15px/1.9 var(--s-serif);text-align:left;border:1px solid #d5c3a4;border-radius:0 20px 20px 20px;padding:16px 18px;margin:14px 20px 22px;word-break:keep-all;box-shadow:0 4px 16px #0003}
#yeokjuTempleAtlas .s-primary{display:block;width:calc(100% - 44px);margin:24px auto 30px;min-height:62px;background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 20%,#091924),#112a30);border:1px solid #dec58d;border-radius:6px;outline:1px solid #d5bf8266;outline-offset:4px;color:#fff2d8;font:500 17px/1.6 var(--s-serif);box-shadow:0 10px 30px #0007;padding:15px 18px;word-break:keep-all}
#yeokjuTempleAtlas [data-temple=money] .s-primary{background:linear-gradient(120deg,#f9efd9,#ebd4a9);color:#3e2815}
#yeokjuTempleAtlas [data-temple=love] .s-primary{background:linear-gradient(120deg,#ffe7ed,#efbdcc);color:#6c243a}
#yeokjuTempleAtlas .s-topic-list,#yeokjuTempleAtlas .s-offers{padding:32px 16px;text-align:center;border-top:1px solid #d1b98755;background:linear-gradient(140deg,#10232c,#08151f)}
#yeokjuTempleAtlas .s-topic-list h3,#yeokjuTempleAtlas .s-offers h3{font:500 23px/1.6 var(--s-serif)!important;color:#fff1d7!important;margin:12px 0 24px;word-break:keep-all}
#yeokjuTempleAtlas .s-topic-grid{display:grid;grid-template-columns:1fr;gap:8px;text-align:left}
#yeokjuTempleAtlas .s-topic-grid button{border:1px solid #ccb38366;border-radius:5px;background:#112633;color:#efe2cb;padding:16px;text-align:left;font:400 14px/1.7 var(--s-serif);min-height:57px;word-break:keep-all}
#yeokjuTempleAtlas .s-offers>p{font:400 13px/1.9 var(--s-serif);color:#dfd1b9}
#yeokjuTempleAtlas .s-packages{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}
#yeokjuTempleAtlas .s-packages button{display:flex;flex-direction:column;align-items:center;gap:14px;background:linear-gradient(145deg,#1b3040,#101e2b);border:1px solid #d5b98988;border-radius:8px;padding:22px 9px;color:#f2e5d1;min-width:0;font-size:15px}
#yeokjuTempleAtlas .s-packages button:last-child{background:linear-gradient(145deg,#664b29,#241e1b);border-color:#e5bf75}
#yeokjuTempleAtlas .s-packages strong{font:600 25px/1.4 var(--s-serif);color:#f7db9e}
#yeokjuTempleAtlas .s-packages small{font:400 10px/1.8 var(--s-sans);color:#d5c8b5}
#yeokjuTempleAtlas .s-package-next{font:400 12px var(--s-sans);border-top:1px solid #c4a56a66;padding-top:15px;width:100%}
#yeokjuTempleAtlas .s-payment-note{font-size:11px!important;margin-top:20px!important;color:#bac0c4!important}
#yeokjuTempleAtlas .s-info{min-height:80vh;padding:50px 25px;background:#0a1c2b}
#yeokjuTempleAtlas .s-info h2{color:#f6e2c0;font:500 30px var(--s-serif)}
#yeokjuTempleAtlas .s-info p{color:#e5d8c4;font:400 17px/2 var(--s-serif)}
/* Existing calculation, login, entitlement and checkout flows retain their APIs. */
body[data-yeokju-screen=birth]{background:linear-gradient(#061423a8,#061423ee),url('sanctuary-world.webp') center/cover fixed!important}
body[data-yeokju-screen=birth] .entry{background:#0b1e2ee8!important;border:1px solid #ceaf7955!important;box-shadow:0 20px 80px #0008!important}
.s-birth-note{font:400 15px/1.8 var(--s-serif);color:#e7d09f;padding:14px 0;border-bottom:1px solid #d6be8755}
.s-reading-intro{padding:22px!important;background:#0c2531!important;border:1px solid #c1a773;color:#f9e7c7!important}
.s-reading-intro small{color:#d9c39b;font:400 12px var(--s-sans)}
.s-reading-intro h3{font:500 26px/1.7 var(--s-serif)!important;color:#fff1dc!important}
.s-reading-scene{padding:22px 18px;margin:10px 0;border:1px solid #c8af7a77;border-radius:8px;background-color:#0a1b28!important;background-size:cover;background-position:center;color:#f8ecd9!important}
.s-reading-label{font:400 12px var(--s-sans);color:var(--accent,#e1c28c);letter-spacing:.05em}
.s-reading-scene .topic-reading-paragraph{font:400 17px/2 var(--s-serif)!important;color:#f5e9d6!important;background:none!important;border:0!important;padding:18px 0 0!important;margin:0!important}
#yeokjuPriceCatalog{background:#0b1d2a!important;padding:22px 15px!important;border:1px solid #c4a67766!important;color:#f9ead1!important}
#yeokjuPriceCatalog h2,#yeokjuPriceCatalog h3{color:#f9ead1!important}
.s-catalog-tiers{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.s-catalog-tiers button{display:flex;flex-direction:column;gap:12px;align-items:flex-start;background:linear-gradient(145deg,#213b4b,#0d1d2a);border:1px solid #bba57c;border-radius:8px;padding:20px 12px;color:#f8e6c4;font:400 14px var(--s-serif)}
.s-catalog-tiers button[aria-pressed=true]{border:2px solid #ffe2a4;box-shadow:0 0 20px #dfbe7f33}
.s-catalog-tiers strong{font-size:23px;color:#f6d79d}
.s-catalog-tiers small{font:400 11px/1.7 var(--s-sans)}
.s-chapter-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:22px 0}
.s-chapter-options label{display:flex;align-items:center;gap:8px;background:#122b3d;color:#eee1c8;border:1px solid #b9a17a66;border-radius:7px;padding:12px 10px;cursor:pointer;font:400 12px/1.7 var(--s-serif)}
.s-chapter-options input{width:20px!important;height:20px!important;accent-color:#b99b5d;flex-shrink:0}
.s-catalog-state{font:400 14px/1.8 var(--s-sans);color:#e6cc98!important}
#yeokjuPriceCatalog .s-payment-note{font:400 12px/1.8 var(--s-sans);color:#bfc6cc}
body[data-yeokju-screen=products] #archiveCatalog{background:linear-gradient(#091b2af2,#091b2afa),url('sanctuary-world.webp') center/cover!important}
body[data-yeokju-screen=products] .yeokju-hub-checkout-title h2{color:#f1debb!important}
body[data-yeokju-screen=products] #yeokjuCheckoutPanel{background:#0d2535!important;border:1px solid #c2a87988!important;color:#f3e5cc!important}
body[data-yeokju-screen=products] #yeokjuCheckoutPanel h2,body[data-yeokju-screen=products] #yeokjuCheckoutPanel h3{color:#f9e5c1!important}
@media(max-width:359px){#yeokjuTempleAtlas .s-grid{gap:8px;width:calc(100% - 20px)}#yeokjuTempleAtlas .s-card-copy{padding:12px 10px}#yeokjuTempleAtlas .s-card-description{font-size:11px}#yeokjuTempleAtlas .s-guide h3{font-size:34px!important}#yeokjuTempleAtlas .s-guide-words{padding-inline:20px}#yeokjuTempleAtlas .s-packages strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){#yeokjuTempleAtlas *,#yeokjuTempleAtlas *:before,#yeokjuTempleAtlas *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media screen{
html body[data-yeokju-screen=home]>main,html body[data-yeokju-screen=home]>#archiveCatalog,html body[data-yeokju-screen=home]>#chapters,html body[data-yeokju-screen=home]>#resultStage{display:none!important}
html body[data-yeokju-screen=birth]>#yeokjuTempleAtlas,html body[data-yeokju-screen=birth]>#archiveCatalog,html body[data-yeokju-screen=birth]>#chapters,html body[data-yeokju-screen=birth]>#resultStage{display:none!important}
html body[data-yeokju-screen=products]>#yeokjuTempleAtlas,html body[data-yeokju-screen=products]>main,html body[data-yeokju-screen=products]>#chapters,html body[data-yeokju-screen=products]>#resultStage{display:none!important}
html body[data-yeokju-screen=reading]>#yeokjuTempleAtlas,html body[data-yeokju-screen=reading]>main,html body[data-yeokju-screen=reading]>#archiveCatalog{display:none!important}
}
@media print{body{max-width:none!important}#yeokjuTempleAtlas{display:none!important}.s-reading-scene{background:white!important;color:#222!important;border:0;padding:0}.s-reading-scene .topic-reading-paragraph{color:#222!important}.s-reading-label,.s-reading-intro{display:none!important}}

/* Explicit boundaries against older global home CSS. */
html body[data-yeokju-screen]{margin:0 auto!important}
html body[data-yeokju-screen=home]>#yeokjuTempleAtlas{background:linear-gradient(180deg,#08182b22 0,#08132166 20%,#081321c9 55%,#081321 100%),url(sanctuary-world.webp) center top/auto 730px no-repeat,#091522!important}
