
/* YEOKJU 2026 - Film 60 / Korean heritage 25 / comic grammar 15.
   Screen-only design: preserved print/PDF output and all calculation/payment code.
   Designed against the existing WebGL hanok world, with no new remote assets. */
@media screen {
 :root{--film-ink:#10121a;--film-copper:#b85e4d;--film-gold:#d8ae77;--film-hanji:#f5eee1;--film-type:#2c2724}
 html{scroll-behavior:smooth}
 body>header{border-bottom:1px solid #c9a76a50!important;background:linear-gradient(90deg,#090d16e8,#1d1820c8)!important}
 body>main{position:relative}
 body>main::before{content:"";position:absolute;z-index:0;pointer-events:none;inset:0;background:radial-gradient(ellipse at 16% 52%,rgba(168,81,52,.15),transparent 56%),linear-gradient(0deg,rgba(7,11,19,.74),transparent 46%);mix-blend-mode:normal}
 body>main>.scenic-copy,body>main>.entry{position:relative;z-index:1}
 .world:after{content:"";position:absolute;inset:0;z-index:9;pointer-events:none;background:radial-gradient(ellipse at 52% 47%,transparent 23%,rgba(4,7,14,.28) 94%),linear-gradient(180deg,rgba(4,8,17,.15),transparent 37%,rgba(13,8,17,.22))}
 .scenic-copy{max-width:850px}
 .scenic-copy .micro{font-weight:700!important;color:#f3cf93!important}
 .scenic-copy .world-label{color:#ffe1b6!important;text-shadow:0 3px 30px rgba(0,0,0,.6),0 0 32px rgba(133,53,43,.3)}
 .scenic-copy h1{max-width:900px;letter-spacing:-.055em;text-shadow:0 4px 24px rgba(0,0,0,.78)}
 .scenic-copy h1 em{color:#ffe4b3!important}
 .scenic-copy p{max-width:630px;color:#f4e9db!important;text-shadow:0 2px 11px rgba(0,0,0,.7)}
 .scenic-copy .scenic-foot{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #d9b78652;background:#160e15bc;color:#f1d6aa!important;border-radius:2px}
 .entry.single-birth-entry{border-radius:10px!important;background:linear-gradient(140deg,rgba(22,17,24,.96),rgba(10,20,27,.94))!important;border:1px solid #d7ae755e!important;box-shadow:0 32px 100px #000b, inset 0 0 0 5px rgba(221,181,119,.035)!important}
 .entry.single-birth-entry::before{content:"";display:block;position:absolute;inset:9px;pointer-events:none;border:1px solid #c4955d44;border-radius:4px}
 .entry.single-birth-entry .step-title{color:#fff0da!important}
 .entry.single-birth-entry :is(.step-help,.privacy){color:#dcd0c0!important}
 .entry.single-birth-entry :is(input,select){color:#fff5e7!important;background:#161a24!important;border-color:#ae906a!important}
 .entry.single-birth-entry :is(input,select):focus-visible{outline:2px solid #f3c78d;outline-offset:3px}
 .entry.single-birth-entry .primary{background:linear-gradient(115deg,#aa4237,#742c2e)!important;color:#fff3e4!important;border:1px solid #dd977e!important;box-shadow:0 10px 30px rgba(67,12,20,.35)!important}
 /* Three uninterrupted film frames; all text remains real selectable HTML. */
 .yeokju-directors-cut{isolation:isolate;position:relative;z-index:2;overflow:hidden;padding:clamp(58px,8vw,128px) clamp(16px,5vw,80px) clamp(60px,7vw,104px);background:radial-gradient(ellipse at 90% 5%,#7133283b,transparent 42%),radial-gradient(ellipse at 0% 62%,#39515830,transparent 53%),linear-gradient(180deg,#080d17,#14121b 43%,#090e15)}
 .yeokju-directors-cut::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:radial-gradient(#eed4a124 .7px,transparent .7px);background-size:34px 34px;mask-image:linear-gradient(180deg,transparent,#000 33%,#000 66%,transparent);opacity:.45}
 .yeokju-directors-header{max-width:1100px;margin:0 auto 40px;text-align:center}
 .yeokju-directors-overline{color:#dbb47b!important;font:700 11px/1.8 'Noto Sans KR',sans-serif!important;letter-spacing:.22em}
 .yeokju-directors-header h2{font:600 clamp(33px,4.4vw,65px)/1.34 'Noto Serif KR','Nanum Myeongjo',serif!important;letter-spacing:-.055em;color:#fff4e5!important;margin:24px auto!important}
 .yeokju-directors-header h2 em{color:#e9b68a;font-style:normal}
 .yeokju-directors-lead{margin:0 auto;max-width:620px;color:#dad0c3!important;font-size:clamp(14px,1.5vw,17px);line-height:1.9;word-break:keep-all}
 .yeokju-directors-rule{margin:26px auto 0;display:flex;justify-content:center;align-items:center;gap:20px;color:#bd9573;font:600 20px 'Noto Serif KR',serif;letter-spacing:.1em}
 .yeokju-directors-rule i{height:1px;width:70px;background:linear-gradient(90deg,transparent,#c69c65,transparent)}
 .yeokju-directors-track{max-width:1240px;margin:0 auto;display:grid;gap:clamp(24px,4vw,54px)}
 .yeokju-scene{position:relative;isolation:isolate;min-height:400px;display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch;overflow:hidden;border:1px solid #aa85599a;background:#131922;box-shadow:0 20px 65px #0008,0 1px 0 #dcb77d24;border-radius:8px}
 .yeokju-scene::after{content:"";position:absolute;inset:10px;border:1px solid #ad875537;pointer-events:none;z-index:2}
 .yeokju-scene:nth-child(even) .yeokju-scene-art{order:2}
 .yeokju-scene-art{position:relative;min-height:365px;overflow:hidden;display:grid;place-items:center;isolation:isolate}
 .yeokju-scene-art::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(0deg,#11131caa,transparent 60%),repeating-linear-gradient(93deg,transparent 0 28px,#d0a27307 29px 30px)}
 .yeokju-scene-origin .yeokju-scene-art{background:radial-gradient(ellipse at 50% 35%,#916d5460,transparent 32%),linear-gradient(160deg,#35414b,#141c2b 50%,#120f19)}
 .yeokju-scene-moon{position:absolute;width:clamp(140px,24vw,270px);aspect-ratio:1;border-radius:50%;top:12%;left:22%;background:radial-gradient(circle at 32% 29%,#f9edd2,#d0b58f 50%,#8b887c);box-shadow:0 0 70px #ead0aa44;opacity:.85}
 .yeokju-scene-horizon{position:absolute;inset:auto -3% 0;height:54%;background:linear-gradient(145deg,#060c16,#142032);clip-path:polygon(0 67%,15% 54%,25% 64%,40% 30%,53% 70%,66% 40%,79% 58%,100% 29%,100% 100%,0 100%);z-index:1}
 .yeokju-scene-glyph{position:relative;z-index:2;font:600 clamp(95px,15vw,220px)/1 'Noto Serif KR',serif;color:#ffddb29c;text-shadow:0 10px 40px #0009,0 0 65px #c68a5277;transform:rotate(-8deg)}
 .yeokju-scene-art-caption{position:absolute;bottom:28px;left:34px;color:#ffe1b7;z-index:3;letter-spacing:.2em;font:600 10px/1.8 Georgia,serif}
 .yeokju-scene-copy{display:flex;flex-direction:column;justify-content:center;gap:19px;padding:clamp(32px,5vw,68px);background:radial-gradient(circle at 100% 0%,rgba(148,70,52,.13),transparent 53%),#17171d}
 .yeokju-scene-episode{display:flex;align-items:center;gap:12px;color:#e3b880;font:700 11px 'Noto Sans KR',sans-serif;letter-spacing:.1em}
 .yeokju-scene-episode i{height:1px;width:38px;background:#aa7251}
 .yeokju-scene-copy h3{font:600 clamp(27px,3.2vw,43px)/1.44 'Noto Serif KR','Nanum Myeongjo',serif!important;color:#fff1dc!important;letter-spacing:-.06em;margin:0!important;word-break:keep-all}
 .yeokju-scene-copy h3 strong{color:#f3b48e!important;font-weight:650}
 .yeokju-scene-copy p{font:400 clamp(15px,1.48vw,18px)/1.9 'Noto Sans KR',sans-serif!important;color:#e5d8cb!important;margin:0!important;word-break:keep-all}
 .yeokju-scene-footnote{display:block;color:#e0c598!important;font-size:12px;letter-spacing:.035em;border-top:1px solid #ab82543c;padding-top:16px}
 .yeokju-scene-relations .yeokju-scene-art{background:radial-gradient(circle at 50% 52%,#a84f354f,transparent 40%),linear-gradient(130deg,#22151c,#432025 52%,#16131e)}
 .yeokju-scene-relations-ring{position:absolute;width:min(55%,300px);aspect-ratio:1;border:1px solid #f0bd80b5;border-radius:50%;box-shadow:0 0 0 17px #b65d4233,0 0 0 36px #a34d2819,inset 0 0 56px #edbe6e40}
 .yeokju-scene-relations-ring::before,.yeokju-scene-relations-ring::after{content:"";position:absolute;inset:16px;border:1px dashed #deb98899;border-radius:50%}
 .yeokju-scene-relations-ring::after{inset:-26px;border-style:solid;border-color:#b17a5a54}
 .yeokju-scene-relations-center{font:600 clamp(95px,14vw,190px)/1 'Noto Serif KR',serif;color:#f9dcaf;position:relative;z-index:1;text-shadow:0 6px 30px #0008}
 .yeokju-scene-relations-path{position:absolute;width:85%;height:1px;background:linear-gradient(90deg,transparent,#f2c18c,transparent);transform:rotate(-38deg)}
 .yeokju-scene-book .yeokju-scene-art{background:radial-gradient(ellipse at 55% 45%,#b9926263,transparent 60%),linear-gradient(150deg,#172c33,#17131b)}
 .yeokju-scene-paper{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;width:min(58%,310px);min-height:280px;padding:35px 24px;background:linear-gradient(130deg,#f4ead8,#e0ceb1);color:#493425;border:1px solid #b4986c;box-shadow:13px 15px 0 #261c1ca8,0 25px 45px #0008;transform:rotate(-7deg)}
 .yeokju-scene-paper::before{content:"";position:absolute;inset:9px;border:1px solid #a17f595c}
 .yeokju-scene-paper b{font:650 38px 'Noto Serif KR',serif;color:#793e36;letter-spacing:.2em}
 .yeokju-scene-paper i{height:1px;background:#aa9072;width:85%;opacity:.65}
 .yeokju-scene-paper span{font:600 13px 'Noto Serif KR',serif;color:#64513e}
 .yeokju-scene-ink{width:120px;height:90px;position:absolute;bottom:10%;right:10%;border:2px solid #b56049;border-radius:50%;opacity:.5;transform:rotate(18deg)}
 .yeokju-directors-outro{margin:clamp(35px,5vw,65px) auto 0;display:flex;gap:20px;align-items:center;justify-content:space-between;max-width:1240px;border-top:1px solid #d2a97855;padding:26px 0;color:#ebddc7}
 .yeokju-directors-outro p{color:#ecdbc5!important;line-height:1.8;margin:0!important}
 .yeokju-directors-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 20px;background:linear-gradient(105deg,#a7483e,#692c30);color:#fff4df!important;border:1px solid #ce9774;border-radius:4px;font-weight:700;text-decoration:none;white-space:nowrap}
 .yeokju-directors-cta:focus-visible,.yeokju-scene:focus-within{outline:3px solid #f8d397;outline-offset:3px}
 /* The existing 3D/WebGL scene remains above; archive gains heritage editorial framing. */
 .archive-catalog .archive-hero{border-color:#cba37599!important;border-radius:8px!important;box-shadow:0 35px 100px #0008!important}
 .archive-catalog .archive-hero-copy h2{color:#fff0da!important}
 .archive-catalog .archive-card{border-radius:6px!important}
 .archive-catalog .archive-card:hover{border-color:#e0b37b!important}
 .comic-teaser{border-radius:5px!important;border-color:#cf9770!important}
 .comic-dialogue{background:linear-gradient(150deg,#201a22,#101723)!important}
 .comic-dialogue :is(p,span){color:#f2dfcf!important}
 .comic-dialogue .comic-speaker{color:#ffd1a2!important}
 /* Long form book surfaces: parchment/ink for reading; film-dark outside the book.
    Keep the opening vignette dark, but every long report page and chart legible. */
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover){
  background:radial-gradient(circle at 90% 10%,#d7bd9240,transparent 40%),repeating-linear-gradient(110deg,transparent 0 17px,#7d573005 18px 19px),linear-gradient(150deg,#fbf7ed,#eee3d1)!important;
  color:var(--film-type)!important;border:1px solid #bca481!important;box-shadow:0 18px 45px #070b14a1,inset 0 0 0 1px #fffded!important;
 }
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover) :is(h2,h3,h4){
  color:#382a25!important;-webkit-text-fill-color:#382a25!important;text-shadow:none!important
 }
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover) :is(p,.yeokju-story-line,.yeokju-classical-story,.yeokju-topic-export-paragraph,li){
  color:#352d28!important;-webkit-text-fill-color:#352d28!important;text-shadow:none!important
 }
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover) :is(.yeokju-sheet-kicker,.yeokju-story-label){
  color:#944136!important;-webkit-text-fill-color:#944136!important;border-color:#9b4f3d88!important
 }
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover) :is(.yeokju-sheet-desc,.yeokju-cover-desc,.yeokju-cover-subtitle,.yeokju-story-disclaimer,.yeokju-chart-notice,.yeokju-chart-owner){
  color:#655449!important;-webkit-text-fill-color:#655449!important
 }
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover) .yeokju-report-seal{
  color:#963d36!important;-webkit-text-fill-color:#963d36!important;border-color:#963d36!important;box-shadow:inset 0 0 0 6px #f7f0e2,inset 0 0 0 8px #986b5488!important
 }
 #resultView .yeokju-customer-reading .yeokju-paper-sheet:not(.yeokju-free-opening):not(.yeokju-story-cover) :is(.yeokju-story-year-output,select){
  background:#fffaf0!important;color:#392b24!important;-webkit-text-fill-color:#392b24!important;border:1px solid #a48b6f!important
 }
 #resultView .yeokju-customer-reading .yeokju-story-chart .yeokju-chart-table :is(td,th,span,strong) {
  color:#302822!important;-webkit-text-fill-color:#302822!important;opacity:1!important;text-shadow:none!important
 }
 #resultView .yeokju-customer-reading .yeokju-story-chart .yeokju-chart-table thead th{
  color:#793e32!important;-webkit-text-fill-color:#793e32!important
 }
 #resultView .yeokju-customer-reading .yeokju-story-chart .yeokju-chart-guidance :is(h4,p) {
  color:#392f28!important;-webkit-text-fill-color:#392f28!important
 }
 #resultView .yeokju-customer-reading .yeokju-story-chart .yeokju-chart-owner,
 #resultView .yeokju-customer-reading .yeokju-story-chart .yeokju-chart-notice{
  color:#655449!important;-webkit-text-fill-color:#655449!important
 }
 #resultView .yeokju-customer-reading .yeokju-new-cover :is(.yeokju-cover-brand,.yeokju-cover-roman,.yeokju-cover-ornament,.yeokju-cover-person,.yeokju-cover-tagline,.yeokju-cover-topics){
  color:#504238!important;-webkit-text-fill-color:#504238!important
 }
 #resultView .yeokju-customer-reading .yeokju-free-opening{border-color:#a88159!important}
 #resultView .yeokju-customer-reading .yeokju-free-opening .yeokju-free-pillar strong{
  color:#ffe7bd!important;-webkit-text-fill-color:#ffe7bd!important;text-shadow:0 1px 4px #000!important
 }
 #resultView .topic-chapter>summary{position:relative}
 #resultView .topic-chapter:not([open])>summary:hover strong{color:#ffe0ac!important}
 #resultView .topic-sub-content{background:#f8f0e4!important;color:#342c26!important;border:1px solid #c1a482!important}
 #resultView .topic-sub-content :is(p,li,span,.topic-customer-reading,.topic-reading-paragraph,.topic-detail-reading){
  color:#352c26!important;-webkit-text-fill-color:#352c26!important
 }
 #resultView .topic-sub-content :is(h3,h4,strong){color:#773b32!important;-webkit-text-fill-color:#773b32!important}
 #resultView .topic-sub-content :is(button.secondary){color:#f5e7d3!important}
 #resultView .topic-sub>summary{color:#f7e6cf!important}
 #resultView .topic-chapter .topic-criterion{color:#dfd1bb!important}
 #resultView .topic-chapter>summary small{color:#dac5ad!important}
 #resultView .yeokju-customer-reading .yeokju-paper-sheet .yeokju-story-line{max-width:68ch}
 #resultView .yeokju-customer-reading .yeokju-paper-sheet :is(h2,h3,h4,p){overflow-wrap:break-word;word-break:keep-all}
 #resultView .yeokju-customer-reading .yeokju-paper-sheet a{color:#995046!important;text-decoration:underline;text-underline-offset:3px}
 .yeokju-scene-copy strong,.yeokju-scene-copy p{letter-spacing:-.025em}
}
@media screen and (max-width:850px){
 .yeokju-scene{grid-template-columns:1fr;min-height:0}
 .yeokju-scene-art{min-height:300px}
 .yeokju-scene:nth-child(even) .yeokju-scene-art{order:0}
 .yeokju-scene-copy{padding:clamp(26px,5vw,48px)}
 .yeokju-directors-outro{flex-direction:column;align-items:stretch;text-align:center}
 .yeokju-directors-cta{width:100%;white-space:normal}
}
@media screen and (max-width:540px){
 .yeokju-directors-header h2{font-size:clamp(28px,8vw,39px)!important}
 .yeokju-scene-art{min-height:245px}
 .yeokju-scene-moon{top:7%;left:23%}
 .yeokju-scene-glyph,.yeokju-scene-relations-center{font-size:96px}
 .yeokju-scene-paper{min-height:235px}
 .yeokju-scene-copy h3{font-size:29px!important}
 .yeokju-directors-cut{padding-inline:14px}
 .yeokju-directors-lead{font-size:14px}
}
@media screen and (prefers-reduced-motion:no-preference) {
 body:not(.motion-paused) .yeokju-scene-art .yeokju-scene-glyph{animation:yeokju-glyph-float 7s ease-in-out infinite alternate}
 body:not(.motion-paused) .yeokju-scene-relations-ring{animation:yeokju-ring-turn 48s linear infinite}
 body:not(.motion-paused) .yeokju-scene-paper{animation:yeokju-page-breathe 8s ease-in-out infinite alternate}
 body:not(.motion-paused) .yeokju-scene-art-caption{animation:yeokju-caption-shine 9s ease-in-out infinite}
 .yeokju-directors-cut.has-story-observer .yeokju-scene{transition:opacity .75s ease,transform .75s cubic-bezier(.19,.8,.27,1);opacity:.72;transform:translateY(24px)}
 .yeokju-directors-cut.has-story-observer .yeokju-scene.is-visible{opacity:1;transform:none}
}
@media print {
 .yeokju-directors-cut{display:none!important}
}
@keyframes yeokju-glyph-float{to{transform:rotate(-6deg) translateY(-13px)}}
@keyframes yeokju-ring-turn{to{transform:rotate(360deg)}}
@keyframes yeokju-page-breathe{to{transform:rotate(-4deg) translateY(-8px)}}
@keyframes yeokju-caption-shine{50%{opacity:.58}}

/* Buttons inside parchment topic readers must retain dark-on-light contrast. */
@media screen {
 #resultView .topic-sub-content button.secondary,
 #resultView .topic-sub-content button.primary{
  background:#713a35!important;border:1px solid #713a35!important;
  color:#fff6e8!important;-webkit-text-fill-color:#fff6e8!important;
 }
 #resultView .topic-sub-content button:focus-visible{
  outline:3px solid #a7483e!important;outline-offset:3px!important;
 }
 #resultView .topic-sub-content a{
  color:#813a31!important;-webkit-text-fill-color:#813a31!important;
  text-decoration:underline;text-underline-offset:3px;
 }
}
