/* YEOKJU visual narrative V2 — art, character, comic navigation and mobile reader polish.
 * No pricing data, birth inputs, calculation files, PDF contents, or payment calls changed.
 */
@media screen{
 :root{--story-ink:#090e18;--story-night:#111724;--story-gold:#f0cf9a;--story-red:#a63235}
 .yeokju-graphic-story{position:relative;isolation:isolate;overflow:hidden;min-height:410px;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.69fr);align-items:center;gap:12px;margin:0;padding:clamp(24px,4vw,46px);border:1px solid #b99668;border-radius:12px;background:radial-gradient(ellipse at 76% 24%,#b0875b41,transparent 47%),linear-gradient(120deg,#090f1c,#182333 65%,#231924);box-shadow:0 26px 70px #0009}
 .yeokju-graphic-story::before{content:"";position:absolute;z-index:-1;inset:0;background:url('yeokju-storefront-art.webp') center/cover no-repeat;opacity:.22;filter:saturate(.77) contrast(1.13)}
 .yeokju-graphic-story::after{content:"";position:absolute;inset:11px;pointer-events:none;border:1px solid #b792625a;border-radius:6px}
 .yeokju-graphic-story-text{position:relative;z-index:2;min-width:0;max-width:660px}
 .yeokju-story-issue{display:inline-flex;gap:10px;align-items:center;color:#f2cf91;font:800 12px/1.6 'Noto Sans KR',sans-serif!important;letter-spacing:.1em;margin-bottom:14px}
 .yeokju-story-issue::before{content:"";width:29px;height:1px;background:#e7bd7c}
 .yeokju-graphic-story h2{font:650 clamp(28px,3.8vw,49px)/1.34 'Noto Serif KR',serif!important;color:#fff3dd!important;margin:6px 0 14px;letter-spacing:-.04em;word-break:keep-all;text-shadow:0 5px 23px #0008}
 .yeokju-story-tagline{font-size:clamp(14px,1.4vw,16px)!important;color:#f2dac0!important;line-height:1.8;margin:0 0 20px!important}
 .yeokju-guide-bubble{border:1px solid #e6c18b;border-radius:14px 14px 14px 3px;padding:19px 21px;background:#f8efdf;box-shadow:7px 9px 0 #0003;color:#312520;max-width:510px}
 .yeokju-guide-speaker{display:block;font:800 12px 'Noto Sans KR',sans-serif!important;color:#8b3f39!important;letter-spacing:.06em;margin-bottom:8px}
 .yeokju-guide-bubble p{font:500 clamp(15px,1.6vw,18px)/1.8 'Noto Sans KR',sans-serif!important;color:#2b2724!important;word-break:keep-all;margin:0!important}
 .yeokju-story-options{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
 .yeokju-story-options button{min-height:47px;border:1px solid #cbab78;border-radius:5px;padding:11px 16px;background:#1c2634;color:#f9e9d0;font-size:14px;line-height:1.4;font-weight:760;cursor:pointer}
 .yeokju-story-options button[aria-pressed="true"]{background:#892e36;color:#fff5e7;border-color:#f3bd8c;box-shadow:0 0 19px #ac453f77}
 .yeokju-story-options button:hover{border-color:#fce4b6}
 .yeokju-story-options button:focus-visible,.yeokju-story-go:focus-visible{outline:3px solid #f9e4b6;outline-offset:3px}
 .yeokju-story-go{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:47px;margin-top:16px;padding:11px 20px;border-radius:5px;background:linear-gradient(115deg,#f3d9aa,#c69a65);border:1px solid #fce3b8;color:#351c20!important;font-size:15px;font-weight:800;cursor:pointer}
 .yeokju-story-portrait{position:relative;z-index:1;align-self:end;display:grid;place-items:end center;min-height:340px}
 .yeokju-story-portrait::before{content:"";position:absolute;width:90%;aspect-ratio:1;top:12%;left:9%;border-radius:50%;border:1px solid #cb9f624d;background:radial-gradient(circle,#efc58e44,transparent 68%);box-shadow:0 0 0 23px #d3a2640c;pointer-events:none}
 .yeokju-story-portrait img{display:block;width:min(100%,390px);height:auto;max-height:470px;object-fit:contain;object-position:bottom center;filter:drop-shadow(9px 18px 20px #0007)}
 .yeokju-story-portrait-badge{position:absolute;right:7px;bottom:22px;background:#581e2bdc;border:1px solid #d9a77f;color:#fce4bd;font-size:12px;font-weight:700;padding:8px 12px;transform:rotate(-4deg);box-shadow:0 4px 18px #0009}
 .yeokju-story-spotlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
 .yeokju-story-spotlights>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:18px;border:1px solid #66543e;background:#131b28;border-radius:8px}
 .yeokju-story-spotlights strong{font-size:15px;color:#f9dba9}
 .yeokju-story-spotlights small{font-size:13px;line-height:1.6;color:#decdb7}
 #archiveCatalog .yeokju-graphic-story{scroll-margin-top:16px}
 #archiveCatalog .yeokju-price-catalog .yeokju-storefront-hero{min-height:175px!important;padding-block:28px!important}
 #archiveCatalog .yeokju-price-catalog .yeokju-storefront-hero h2{font-size:clamp(25px,3.2vw,37px)!important}
 /* A small on-page guide, not an overlay, in the calculated reading. */
 #resultView .yeokju-result-comic{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:center;gap:14px;padding:16px 20px;max-width:1050px;margin:14px auto 18px;border:1px solid #bd9160;border-radius:11px;background:linear-gradient(110deg,#192332,#381920);box-shadow:0 12px 30px #0005}
 #resultView .yeokju-result-comic img{width:100%;height:122px;object-fit:cover;object-position:50% 19%;border-radius:12px;background:radial-gradient(circle at 50% 15%,#d1a97465,#0f1623 75%)}
 #resultView .yeokju-result-comic h2{font:700 13px 'Noto Sans KR',sans-serif;color:#f1c792;margin:0 0 6px!important;letter-spacing:.05em}
 #resultView .yeokju-result-comic p{color:#f6e7d3!important;font-size:clamp(14px,1.6vw,17px)!important;line-height:1.65;margin:0 0 9px!important;word-break:keep-all}
 #resultView .yeokju-result-comic nav{display:flex;gap:8px;flex-wrap:wrap}
 #resultView .yeokju-result-comic nav button{min-height:38px;padding:7px 11px;background:#f4e0b9;color:#392421!important;border:1px solid #fbe9c8;border-radius:5px;font-size:13px;font-weight:800}
 #resultView .yeokju-result-comic nav button:focus-visible{outline:3px solid #ffe4b3;outline-offset:3px}
 #resultView .yeokju-free-opening .yeokju-story-label{display:block;padding-left:8px;border-left:3px solid #bb765b;margin-bottom:9px}
 #resultView .yeokju-free-opening .yeokju-story-line{max-width:67ch;word-break:keep-all;overflow-wrap:anywhere}
 #resultView .yeokju-free-opening .yeokju-story-line strong{color:#ffdb9f!important}
 #resultView .native-reading-toc{max-width:1040px}
 #resultView .native-reading-toc button{min-width:0;box-sizing:border-box}
 #resultView .result-actions{gap:10px}
}
@media screen and (max-width:700px){
 .yeokju-graphic-story{display:flex;flex-direction:column;min-height:0;padding:25px 17px 0;gap:0}
 .yeokju-graphic-story-text{width:100%}
 .yeokju-graphic-story h2{font-size:clamp(26px,7vw,35px)!important}
 .yeokju-guide-bubble{padding:16px;border-radius:10px 10px 10px 3px}
 .yeokju-story-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .yeokju-story-options button{font-size:12px;padding:8px 5px;min-height:46px;word-break:keep-all}
 .yeokju-story-go{width:100%;box-sizing:border-box;margin-top:11px}
 .yeokju-story-portrait{min-height:0;align-self:center;width:100%;height:210px;overflow:hidden;place-items:start center;margin-top:3px}
 .yeokju-story-portrait img{width:min(64%,260px);margin-top:-14px}
 .yeokju-story-portrait::before{width:180px;top:0;left:calc(50% - 90px)}
 .yeokju-story-portrait-badge{bottom:10px;right:8px}
 .yeokju-story-spotlights{grid-template-columns:1fr;gap:8px}
 .yeokju-story-spotlights>div{padding:12px 15px}
 /* A single compact reader toolbar instead of two giant bars. */
 .result-stage .result-head{min-height:59px!important;padding:10px 14px!important;gap:9px!important;background:#07111c!important;box-sizing:border-box!important}
 .result-stage .result-head h2{font-size:clamp(16px,4.5vw,20px)!important;line-height:1.25!important;white-space:nowrap;letter-spacing:-.03em}
 .result-stage .result-head button{font-size:13px!important;line-height:1.35!important;min-height:42px;white-space:nowrap;padding:7px 10px!important;flex:0 0 auto}
 #nativeEngineHost #resultView.active .native-reading-tabs{position:sticky!important;top:0!important;z-index:22!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:10px 12px!important;min-height:64px!important;box-sizing:border-box!important;background:#111a27!important}
 #nativeEngineHost #resultView.active .native-reading-tabs button{min-width:0!important;width:100%!important;font-size:14px!important;padding:10px 6px!important;min-height:44px!important;border-radius:7px!important;background:#24313b!important;border:1px solid #b59a76!important;color:#fae9d3!important}
 #nativeEngineHost #resultView.active .native-reading-tabs button[aria-pressed="true"]{background:#8e3540!important;color:#fff1df!important;border-color:#e6af83!important}
 #resultView .yeokju-result-comic{grid-template-columns:72px minmax(0,1fr);gap:10px;margin:12px 10px 14px;padding:11px}
 #resultView .yeokju-result-comic img{height:115px}
 #resultView .yeokju-result-comic h2{font-size:12px!important}
 #resultView .yeokju-result-comic p{font-size:14px!important;line-height:1.57!important}
 #resultView .yeokju-result-comic nav{gap:5px}
 #resultView .yeokju-result-comic nav button{font-size:12px!important;min-height:36px;padding:7px 9px}
 #resultView .native-reading-toc{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin:15px 11px 25px!important;width:auto!important}
 #resultView .native-reading-toc button{display:grid!important;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px!important;min-height:62px!important;padding:11px 13px!important;border-radius:7px!important;background:#161d28!important;border:1px solid #796349!important;text-align:left;box-shadow:none!important}
 #resultView .native-reading-toc button strong{font-size:14px!important;line-height:1.42!important;white-space:normal!important;word-break:keep-all;color:#fff0d8!important;min-width:0}
 #resultView .native-reading-toc button span{font:700 16px/1.2 Georgia,serif;color:#e8b985!important}
 #resultView .native-reading-toc button small{font-size:11px!important;white-space:nowrap;color:#d4bd9d!important}
 #resultView .yeokju-customer-reading .yeokju-paper-sheet{padding:23px 18px!important}
 #resultView .yeokju-customer-reading .yeokju-free-opening h2{font-size:clamp(25px,6vw,30px)!important;line-height:1.34!important}
 #resultView .yeokju-customer-reading .yeokju-free-opening .yeokju-story-line{font-size:16px!important;line-height:1.78!important;margin-bottom:22px!important}
 #resultView .yeokju-customer-reading .yeokju-free-pillars{gap:8px!important}
 #resultView .yeokju-customer-reading .yeokju-free-pillar strong{font-size:27px!important}
 #resultView .result-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;padding:14px!important}
 #resultView .result-actions>*{box-sizing:border-box!important;min-width:0!important;width:100%!important;min-height:48px!important;padding:11px 9px!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:break-word!important;font-size:13px!important;line-height:1.4!important}
 #nativeEngineHost>main{padding:12px 10px 24px!important}
 #resultView{overflow-x:hidden!important}
}
@media screen and (max-width:350px){
 #resultView .result-actions{grid-template-columns:1fr!important}
 #resultView .native-reading-toc button{grid-template-columns:25px minmax(0,1fr);row-gap:3px!important}
 #resultView .native-reading-toc button small{grid-column:2}
}
@media screen and (prefers-reduced-motion:no-preference){
 body:not(.motion-paused) .yeokju-story-portrait img{animation:yeokju-portrait-breath 5s ease-in-out infinite alternate}
 body:not(.motion-paused) .yeokju-guide-bubble{animation:yeokju-story-reveal .35s ease}
}
@media screen and (prefers-reduced-motion:reduce){.yeokju-story-portrait img,.yeokju-guide-bubble{animation:none!important}}
@keyframes yeokju-portrait-breath{from{transform:translateY(0) rotate(-.4deg)}to{transform:translateY(-7px) rotate(.3deg)}}
@keyframes yeokju-story-reveal{from{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:none}}
@media print{
 .yeokju-graphic-story,.yeokju-story-spotlights,#resultView .yeokju-result-comic{display:none!important}
}

/* Remove redundant legacy storyboard and sales hero:
   one human-led scene, one package selector, one reading preview. */
@media screen {
 .yeokju-directors-cut{display:none!important}
 #archiveCatalog.yeokju-hub-mode .yeokju-cinematic-storefront .yeokju-storefront-hero{display:none!important}
 #archiveCatalog.yeokju-hub-mode .yeokju-cinematic-storefront .yeokju-package-heading{margin-top:7px}
 /* Three editorial comic cuts in actual calculated free opening, without changing prose or PDF. */
 #resultView .yeokju-customer-reading .yeokju-free-opening p.yeokju-story-line:nth-of-type(3n+2){
   display:block;padding:clamp(17px,3vw,25px)!important;margin:13px 0 26px!important;
   border:1px solid #d5ba94!important;border-left:5px solid #9e433c!important;
   border-radius:4px 12px 12px 4px!important;background:linear-gradient(130deg,#faf1df,#e9ddc9)!important;
   color:#2e2824!important;-webkit-text-fill-color:#2e2824!important;
   box-shadow:0 14px 30px #0005;
 }
 #resultView .yeokju-customer-reading .yeokju-free-opening p.yeokju-story-line:nth-of-type(3n+2) strong{
   color:#873e35!important;-webkit-text-fill-color:#873e35!important;
 }
 #resultView .yeokju-customer-reading .yeokju-free-opening p.yeokju-story-line:nth-of-type(3n+2) .yeokju-story-label{
   color:#863e35!important;-webkit-text-fill-color:#863e35!important;
   border-left-color:#863e35!important;
 }
}
