/* Release 158.9: UMJ folklore presentation parity with TSC 158.8.
 * Loaded only by the folklore archive/detail routes. Layout/type/spacing and
 * artwork layering are derived from the shipped TSC stylesheet; the palette
 * and all content/artwork URLs remain UMJ's. See 1589_FOLKLORE_STYLE_PARITY.md.
 * Do not load TSC's whole stylesheet or alter shared UMJ theme rules here.
 */
#site-content.folklore-ui {
  --folklore-border:var(--uj-line); --folklore-border-strong:var(--uj-line-strong);
  --folklore-crimson-soft:var(--uj-vermilion-soft);
  --folklore-radius-sm:8px; --folklore-radius:12px;
  --folklore-shadow-sm:0 10px 28px rgba(0,0,0,.20);
  --folklore-fast:160ms; --folklore-slow:680ms; --folklore-ease:cubic-bezier(.2,.7,.2,1);
  font-family:Inter,Segoe UI,Arial,sans-serif; font-size:16px; line-height:1.55;
  color:var(--uj-cream);
}
/* Neutralize UMJ-only embellishments where TSC has none. */
#site-content.folklore-ui .page-hero h1,
#site-content.folklore-ui .section h2 { text-wrap:wrap; }
#site-content.folklore-ui .section-heading h2 { max-width:none; }
#site-content.folklore-ui .tag,
#site-content.folklore-ui .lock-badge,
#site-content.folklore-ui .unlock-card,
#site-content.folklore-ui .membership-coming-soon-inline { border-radius:0; }
#site-content.folklore-ui .text-link { font-weight:400; }
#site-content.folklore-ui .prose>h2 { padding-top:0; position:static; }
#site-content.folklore-ui .prose>h2:before { content:none; }
/* Do not let UMJ's general-page reveal translate the immersive hero/locked grid. */
#site-content.folklore-ui .motion-reveal:not(.tsc-motion-reveal) {
  opacity:1; transform:none; transition:none;
}
#site-content.folklore-ui * { box-sizing:border-box }
#site-content.folklore-ui a { color:inherit;text-decoration:none }
#site-content.folklore-ui .eyebrow,
#site-content.folklore-ui .section-kicker { color:var(--uj-vermilion-soft);font-size:12px;letter-spacing:.28em;font-weight:800 }
#site-content.folklore-ui .page-hero h1 { font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:clamp(54px,8vw,108px);line-height:.92;margin:18px 0 28px;letter-spacing:-.04em }
#site-content.folklore-ui .button { display:inline-flex;justify-content:center;align-items:center;padding:13px 18px;border:1px solid var(--uj-line-strong);font-size:14px }
#site-content.folklore-ui .button.primary { background:var(--uj-vermilion);border-color:var(--uj-vermilion);color:#fff }
#site-content.folklore-ui .button.ghost { background:transparent; color: white; }
#site-content.folklore-ui .button.full { width:100% }
#site-content.folklore-ui .section { padding:84px 7vw;max-width:1500px;margin:auto }
#site-content.folklore-ui .section h2 { font-family:Georgia,serif;font-size:clamp(32px,4vw,58px);font-weight:400;line-height:1.05;margin:10px 0 22px }
#site-content.folklore-ui .section p { color:var(--uj-cream-muted) }
#site-content.folklore-ui .section-heading { display:flex;justify-content:space-between;gap:20px;align-items:end }
#site-content.folklore-ui .text-link { color:var(--uj-gold) }
#site-content.folklore-ui .tag { display:inline-block;border:1px solid var(--uj-line-strong);padding:5px 8px;color:var(--uj-cream-muted);font-size:11px }
#site-content.folklore-ui .tag.large { font-size:12px;padding:8px 10px }
#site-content.folklore-ui .page-hero { padding:90px 7vw 55px;background:linear-gradient(135deg,var(--uj-ink-2),var(--uj-ink-3));border-bottom:1px solid var(--uj-line) }
#site-content.folklore-ui .page-hero h1 { font-size:clamp(50px,7vw,90px) }
#site-content.folklore-ui .page-hero h2 { font-family:Georgia,serif;font-weight:400;color:var(--uj-cream-muted) }
#site-content.folklore-ui .page-hero>p:last-of-type { max-width:850px;color:var(--uj-cream-muted) }
#site-content.folklore-ui .meta-row { display:flex;gap:20px;color:#a8bab5;font-size:12px;text-transform:uppercase;letter-spacing:.12em }
#site-content.folklore-ui .truth { color:#a8bab5;font-size:10px;text-transform:uppercase;letter-spacing:.08em }
#site-content.folklore-ui .prose { max-width:800px }
#site-content.folklore-ui .prose h2 { font-size:35px;margin-top:42px }
#site-content.folklore-ui .visit-card { align-self:start;position:sticky;top:100px;border:1px solid var(--uj-line);padding:24px;background:var(--uj-panel) }
#site-content.folklore-ui .visit-card h3 { font-family:Georgia,serif;font-size:27px;font-weight:400 }
#site-content.folklore-ui .fineprint { font-size:11px!important;color:#91a6a1!important }
@media (max-width:900px) {
#site-content.folklore-ui .visit-card { position:static }
#site-content.folklore-ui .section { padding:60px 6vw }
}
#site-content.folklore-ui .locked-card { position:relative;overflow:hidden }
#site-content.folklore-ui .locked-card:after { content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(transparent,rgba(6,25,29,0.96));pointer-events:none }
#site-content.folklore-ui .locked-card>* { position:relative;z-index:1 }
#site-content.folklore-ui .lock-badge { position:absolute!important;right:18px;bottom:18px;z-index:3!important;background:var(--uj-ink-3);border:1px solid var(--uj-vermilion);color:var(--uj-cream);padding:6px 9px;font-size:9px;letter-spacing:.14em }
#site-content.folklore-ui .locked-location-layout { display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:70px }
#site-content.folklore-ui .locked-preview { max-width:800px }
#site-content.folklore-ui .obscured-stack { margin-top:34px;filter:blur(5px);opacity:.45 }
#site-content.folklore-ui .obscured-stack div { height:15px;background:#91a6a1;margin:16px 0;border-radius:3px }
#site-content.folklore-ui .obscured-stack .short { width:62% }
#site-content.folklore-ui .unlock-card { align-self:start;border:1px solid var(--uj-line-strong);background:linear-gradient(160deg,var(--uj-panel),var(--uj-panel));padding:30px }
#site-content.folklore-ui .unlock-card .lock-icon { display:grid;place-items:center;width:58px;height:58px;border:1px solid var(--uj-vermilion);color:var(--uj-vermilion-soft);font-family:serif;font-size:26px }
#site-content.folklore-ui .unlock-card h3 { font-family:Georgia,serif;font-weight:400;font-size:30px }
#site-content.folklore-ui .unlock-card ul { padding-left:18px;color:var(--uj-cream-muted);font-size:13px;line-height:1.9;margin:24px 0 }
@media (max-width:900px) {
#site-content.folklore-ui .locked-location-layout { grid-template-columns:1fr }
}
#site-content.folklore-ui .folklore-hero { background:radial-gradient(circle at 78% 20%,rgba(229,101,80,0.18),transparent 32%),linear-gradient(135deg,var(--uj-ink),var(--uj-ink-2)) }
#site-content.folklore-ui .folklore-filters { display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px }
#site-content.folklore-ui .folklore-library-heading { align-items:flex-end }
#site-content.folklore-ui .folklore-search-form { display:flex;align-items:center;gap:8px;min-width:min(310px,38vw);margin-bottom:22px }
#site-content.folklore-ui .folklore-search-form input[type=search] { width:100%;min-height:38px;border:1px solid var(--uj-line-strong);background:var(--uj-panel);color:var(--uj-cream);padding:8px 11px;font:inherit;font-size:13px;outline:none }
#site-content.folklore-ui .folklore-search-form input[type=search]:focus { border-color:var(--uj-vermilion);box-shadow:0 0 0 2px rgba(229,101,80,.16) }
#site-content.folklore-ui .folklore-search-form input[type=search]::placeholder { color:#91a6a1 }
#site-content.folklore-ui .folklore-search-clear { flex:0 0 auto;color:var(--uj-gold);font-size:11px;text-decoration:underline;text-underline-offset:3px }
#site-content.folklore-ui .folklore-search-status { margin:-16px 0 22px!important;color:#91a6a1!important;font-size:12px!important }
#site-content.folklore-ui .folklore-empty-state { grid-column:1/-1;border:1px solid var(--uj-line);background:var(--uj-panel);padding:24px }
#site-content.folklore-ui .folklore-empty-state h3 { margin:0 0 7px;font-family:Georgia,serif;font-size:24px;font-weight:400 }
#site-content.folklore-ui .folklore-empty-state p { margin:0!important;font-size:13px!important }
#site-content.folklore-ui .folklore-filters .tag { background:var(--uj-panel);text-decoration:none }
#site-content.folklore-ui .folklore-filters .tag.active { border-color:var(--uj-vermilion);color:var(--uj-cream);background:var(--uj-ink-3) }
#site-content.folklore-ui .folklore-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px }
#site-content.folklore-ui .folklore-card { position:relative;border:1px solid var(--uj-line);background:var(--uj-panel);padding:24px;min-height:310px;display:flex;flex-direction:column }
#site-content.folklore-ui .folklore-card:hover { transform:translateY(-2px);border-color:var(--uj-jade-deep) }
#site-content.folklore-ui .folklore-card-top { display:flex;justify-content:space-between;gap:10px }
#site-content.folklore-ui .folklore-card h2 { font-family:Georgia,serif;font-weight:400;font-size:31px;margin:22px 0 0 }
#site-content.folklore-ui .folklore-japanese { font-family:Georgia,serif;font-size:19px!important;color:#a8bab5;margin:4px 0 15px!important }
#site-content.folklore-ui .folklore-card>p:not(.folklore-japanese) { font-size:14px }
#site-content.folklore-ui .folklore-card-meta { display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--uj-line);margin-top:auto;padding-top:13px;color:#91a6a1;font-size:11px }
#site-content.folklore-ui .folklore-card.locked-card .folklore-card-meta { margin-bottom:0 }
#site-content.folklore-ui .folklore-card.locked-card .lock-badge { position:static!important;right:auto;bottom:auto;align-self:flex-end;margin-top:16px;flex:0 0 auto }
#site-content.folklore-ui .access-public { color:var(--uj-jade) }
#site-content.folklore-ui .access-preview { color:var(--uj-gold) }
#site-content.folklore-ui .access-member { color:var(--uj-vermilion-soft) }
#site-content.folklore-ui .folklore-entry-layout { display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:70px }
#site-content.folklore-ui .folklore-source-card .button { margin-top:10px;text-align:center }
#site-content.folklore-ui .folklore-back { display:inline-block;margin-top:24px }
#site-content.folklore-ui .folklore-locked-layout .locked-preview>p { max-width:850px }
#site-content.folklore-ui .folklore-prose p { line-height:1.8 }
#site-content.folklore-ui .folklore-card.has-folklore-art { overflow:hidden;isolation:isolate;background:var(--uj-ink) }
#site-content.folklore-ui .folklore-card.has-folklore-art:before { content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(6,25,29,0.34) 0%,rgba(6,25,29,0.62) 45%,rgba(6,25,29,0.93) 100%) }
#site-content.folklore-ui .folklore-card .folklore-card-art { position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0!important;pointer-events:none;transition:transform .28s ease,filter .28s ease;filter:saturate(1.04) contrast(1.03) brightness(.86) }
#site-content.folklore-ui .folklore-card.has-folklore-art>*:not(.folklore-card-art) { position:relative;z-index:2 }
#site-content.folklore-ui .folklore-card.has-folklore-art.locked-card:after { z-index:1 }
#site-content.folklore-ui .folklore-card.has-folklore-art h2,
#site-content.folklore-ui .folklore-card.has-folklore-art p,
#site-content.folklore-ui .folklore-card.has-folklore-art .truth,
#site-content.folklore-ui .folklore-card.has-folklore-art .folklore-card-meta { text-shadow:0 2px 12px rgba(0,0,0,.92) }
#site-content.folklore-ui .folklore-card.has-folklore-art:hover .folklore-card-art { transform:scale(1.035);filter:saturate(1.08) contrast(1.04) brightness(.91) }
@media (max-width:900px) {
#site-content.folklore-ui .folklore-grid,
#site-content.folklore-ui .folklore-entry-layout { grid-template-columns:1fr }
}
@media (prefers-reduced-motion:reduce) {
#site-content.folklore-ui .folklore-card .folklore-card-art { transition:none }
#site-content.folklore-ui .folklore-card.has-folklore-art:hover .folklore-card-art { transform:none }
}
#site-content.folklore-ui .folklore-card .folklore-card-access-footer { margin-top:auto;padding-top:13px;border-top:1px solid var(--uj-line);display:flex;flex-direction:column;gap:18px }
#site-content.folklore-ui .folklore-card .folklore-card-access-footer .folklore-card-meta { margin:0;padding:0;border:0;display:flex;justify-content:space-between;gap:15px;color:#91a6a1;font-size:11px }
#site-content.folklore-ui .folklore-card .folklore-card-access-footer .lock-badge { position:static!important;inset:auto!important;align-self:flex-end;display:inline-block!important;margin:0!important;flex:0 0 auto }
#site-content.folklore-ui :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline:2px solid var(--uj-vermilion-soft)!important;outline-offset:3px }
@media (prefers-reduced-motion:reduce) {
#site-content.folklore-ui *,
#site-content.folklore-ui *:before,
#site-content.folklore-ui *:after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important }
}
#site-content.folklore-ui .immersive-page-hero { position:relative;overflow:hidden;isolation:isolate;min-height:440px;display:flex;flex-direction:column;justify-content:center;background:var(--uj-ink) }
#site-content.folklore-ui .immersive-page-hero:not(.destination-hero):before { content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(6,25,29,0.96) 0%,rgba(6,25,29,0.88) 35%,rgba(6,25,29,0.56) 60%,rgba(6,25,29,0.28) 82%,rgba(6,25,29,0.48) 100%),linear-gradient(180deg,rgba(6,25,29,0.1),rgba(6,25,29,0.18) 52%,rgba(6,25,29,0.82)); }
#site-content.folklore-ui .immersive-page-hero:not(.destination-hero):after { content:"";position:absolute;z-index:1;inset:-15%;pointer-events:none;background:radial-gradient(circle at 76% 34%,rgba(229,101,80,0.2),transparent 34%),radial-gradient(circle at 57% 68%,rgba(229,101,80,0.09),transparent 28%);animation:folkloreAmbientGlow 13s ease-in-out infinite alternate }
#site-content.folklore-ui .immersive-hero-art { position:absolute;z-index:0;inset:-3%;width:106%;height:106%;object-fit:cover;object-position:center;filter:saturate(1.08) contrast(1.08) brightness(.95);transform:scale(1.04);animation:folkloreHeroDrift 19s ease-in-out infinite alternate;will-change:transform }
#site-content.folklore-ui .immersive-page-hero>*:not(.immersive-hero-art) { position:relative;z-index:2;max-width:900px;text-shadow:0 3px 20px rgba(0,0,0,.96) }
#site-content.folklore-ui .folklore-immersive-hero .immersive-hero-art { filter:saturate(1.16) contrast(1.10) brightness(.92) }
#site-content.folklore-ui.folklore-motion-enabled .tsc-motion-reveal { opacity:0;transform:translate3d(0,24px,0);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1) }
#site-content.folklore-ui.folklore-motion-enabled .tsc-motion-reveal.tsc-motion-visible { opacity:1;transform:translate3d(0,0,0) }
@media (max-width:900px) {
#site-content.folklore-ui .immersive-page-hero { min-height:390px }
#site-content.folklore-ui .immersive-page-hero:not(.destination-hero):before { background:linear-gradient(90deg,rgba(6,25,29,0.96),rgba(6,25,29,0.68)),linear-gradient(180deg,rgba(6,25,29,0.1),rgba(6,25,29,0.8)) }
#site-content.folklore-ui .immersive-hero-art { object-position:62% center }
}
@media (prefers-reduced-motion:reduce) {
#site-content.folklore-ui .immersive-hero-art,
#site-content.folklore-ui .immersive-page-hero:not(.destination-hero):after { animation:none!important }
#site-content.folklore-ui .immersive-hero-art { transform:scale(1.02)!important;will-change:auto }
#site-content.folklore-ui.folklore-motion-enabled .tsc-motion-reveal { opacity:1!important;transform:none!important;transition:none!important }
}
#site-content.folklore-ui .page-hero:not(.immersive-page-hero):not(.destination-hero):not(.app-install-hero) { position:relative;overflow:hidden;isolation:isolate }
#site-content.folklore-ui .page-hero:not(.immersive-page-hero):not(.destination-hero):not(.app-install-hero):after { content:"";position:absolute;right:3vw;top:50%;width:clamp(150px,22vw,340px);height:clamp(150px,22vw,340px);transform:translateY(-50%);background:url("../../img/logo-unmapped-japan.webp?v=105l") center/contain no-repeat;opacity:.035;pointer-events:none;z-index:0 }
#site-content.folklore-ui .page-hero:not(.immersive-page-hero):not(.destination-hero):not(.app-install-hero)>* { position:relative;z-index:1 }
#site-content.folklore-ui .immersive-hero-art { image-rendering:auto }
@media (max-width:780px) {
#site-content.folklore-ui .page-hero:not(.immersive-page-hero):not(.destination-hero):not(.app-install-hero):after { right:-55px;opacity:.025 }
}
#site-content.folklore-ui .section { padding-top:clamp(58px,6vw,86px);padding-bottom:clamp(58px,6vw,86px) }
#site-content.folklore-ui .section-heading { margin-bottom:24px }
#site-content.folklore-ui .section-heading h2 { margin-bottom:0 }
#site-content.folklore-ui .section-kicker,
#site-content.folklore-ui .eyebrow { color:var(--folklore-crimson-soft) }
#site-content.folklore-ui .button { border-radius:var(--folklore-radius-sm);transition:transform var(--folklore-fast) var(--folklore-ease),border-color var(--folklore-fast) ease,background var(--folklore-fast) ease,color var(--folklore-fast) ease,box-shadow var(--folklore-fast) ease }
#site-content.folklore-ui .button { min-height:44px;padding:11px 18px;font-weight:700;letter-spacing:.015em }
#site-content.folklore-ui .button.primary { background:linear-gradient(180deg,#e56550,#b94d3c);border-color:#ef735f;box-shadow:0 9px 24px rgba(229,101,80,0.2) }
#site-content.folklore-ui .button.primary:hover,
#site-content.folklore-ui .button.primary:focus-visible { background:linear-gradient(180deg,#ef735f,#ce5945);box-shadow:0 12px 30px rgba(229,101,80,0.28);transform:translateY(-1px) }
#site-content.folklore-ui .button.ghost { background:rgba(6,25,29,0.72);border-color:var(--folklore-border-strong) }
#site-content.folklore-ui .button.ghost:hover,
#site-content.folklore-ui .button.ghost:focus-visible { border-color:var(--uj-jade-deep);background:var(--uj-ink-3);transform:translateY(-1px) }
#site-content.folklore-ui .visit-card { border-radius:var(--folklore-radius);border-color:var(--folklore-border);background:linear-gradient(145deg,rgba(6,25,29,0.96),rgba(6,25,29,0.98));box-shadow:var(--folklore-shadow-sm) }
#site-content.folklore-ui .lock-badge { border-radius:999px }
#site-content.folklore-ui .prose { max-width:820px }
#site-content.folklore-ui .prose p { line-height:1.78 }
#site-content.folklore-ui .prose h2 { line-height:1.12 }
#site-content.folklore-ui.folklore-motion-enabled .tsc-motion-reveal { transition-duration:var(--folklore-slow);transition-timing-function:var(--folklore-ease) }
@media (max-width:480px) {
#site-content.folklore-ui .button { width:auto }
}
@media (prefers-reduced-motion:reduce) {
#site-content.folklore-ui .button { transition:none!important }
#site-content.folklore-ui .button:hover { transform:none!important }
}
#site-content.folklore-ui .responsive-art-picture { display:contents }
#site-content.folklore-ui .immersive-page-hero>.responsive-art-picture { display:block;position:absolute;inset:0;width:100%;height:100%;z-index:auto!important;max-width:none!important;margin:0;padding:0;pointer-events:none }
#site-content.folklore-ui .folklore-hero-copy { width:min(880px,100%);padding:clamp(20px,3vw,34px);border:1px solid rgba(229,101,80,0.28);border-radius:16px;background:rgba(6,25,29,0.78);box-shadow:0 22px 60px rgba(0,0,0,.38);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);text-shadow:0 2px 14px rgba(0,0,0,.94) }
#site-content.folklore-ui .folklore-hero-copy .eyebrow { margin-top:0 }
#site-content.folklore-ui .folklore-hero-copy h1 { margin-top:14px }
#site-content.folklore-ui .folklore-hero-copy>p:last-of-type { color:var(--uj-cream-muted) }
#site-content.folklore-ui .folklore-hero-copy .meta-row { margin-top:18px;flex-wrap:wrap }
#site-content.folklore-ui .folklore-reading-panel { max-width:none!important;padding:clamp(24px,3.3vw,44px);border:1px solid rgba(92,129,123,0.58);border-radius:16px;background:rgba(6,25,29,0.9);box-shadow:0 26px 70px rgba(0,0,0,.38);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px) }
@media (max-width:900px) {
#site-content.folklore-ui .folklore-hero-copy { padding:20px;background:rgba(6,25,29,0.84);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px) }
#site-content.folklore-ui .folklore-reading-panel { padding:22px;background:rgba(6,25,29,0.92) }
}
#site-content.folklore-ui button:not(:disabled),
#site-content.folklore-ui a.button:not([aria-disabled="true"]) { cursor:pointer }
#site-content.folklore-ui .folklore-entry-hero-compact { position:relative;isolation:isolate;overflow:hidden;min-height:0;padding:clamp(34px,4.5vw,58px) 7vw clamp(30px,4vw,48px);background:radial-gradient(circle at 78% 30%,rgba(229,101,80,0.18),transparent 32%),radial-gradient(circle at 18% 78%,rgba(229,101,80,0.17),transparent 38%),linear-gradient(118deg,var(--uj-ink) 0%,var(--uj-ink-2) 50%,var(--uj-ink-3) 100%);border-bottom:1px solid var(--uj-line) }
#site-content.folklore-ui .folklore-entry-hero-compact:before { content:"妖";position:absolute;z-index:-1;right:6vw;top:50%;transform:translateY(-50%);font-family:Georgia,"Times New Roman",serif;font-size:clamp(120px,18vw,260px);line-height:.8;color:rgba(229,101,80,0.055);pointer-events:none }
#site-content.folklore-ui .folklore-entry-hero-compact:after { content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.018),transparent 28%,rgba(229,101,80,0.025) 72%,transparent),repeating-linear-gradient(90deg,rgba(255,255,255,.014) 0,rgba(255,255,255,.014) 1px,transparent 1px,transparent 46px) }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy { width:min(980px,100%);padding:0 0 0 clamp(16px,2vw,24px);border:0;border-left:2px solid rgba(229,101,80,0.62);border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-shadow:0 2px 14px rgba(0,0,0,.72) }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy .eyebrow { margin:0 0 8px }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy h1 { font-size:clamp(44px,5.3vw,76px);line-height:.95;margin:8px 0 10px;letter-spacing:-.035em }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy h2 { font-size:clamp(20px,2.2vw,30px);margin:0 0 12px;color:var(--uj-cream-muted) }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy>p:not(.eyebrow) { max-width:820px;margin:8px 0 0;color:var(--uj-cream-muted) }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy .meta-row { margin-top:14px;gap:14px }
#site-content.folklore-ui .folklore-entry-content { align-items:start }
#site-content.folklore-ui .folklore-side-stack { align-self:start;position:sticky;top:100px;display:grid;gap:16px;min-width:0 }
#site-content.folklore-ui .folklore-side-stack .folklore-source-card { position:static;top:auto;margin:0 }
#site-content.folklore-ui .folklore-research-preview { margin:0;border:1px solid var(--uj-line);background:linear-gradient(160deg,var(--uj-ink-2),var(--uj-ink));box-shadow:0 18px 48px rgba(0,0,0,.26);overflow:hidden;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none }
#site-content.folklore-ui .folklore-research-preview-button { display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:zoom-in;font:inherit }
#site-content.folklore-ui .folklore-research-preview-button:focus-visible { outline:2px solid var(--uj-vermilion);outline-offset:-2px }
#site-content.folklore-ui .folklore-research-preview-frame { display:block;background:#04171b;overflow:hidden }
#site-content.folklore-ui .folklore-research-preview-frame img { display:block;width:100%;height:auto;object-fit:contain;filter:saturate(1.04) contrast(1.03);pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none }
#site-content.folklore-ui .folklore-research-preview-action { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-top:1px solid var(--uj-line);color:var(--uj-cream);font-size:10px;font-weight:800;letter-spacing:.16em }
#site-content.folklore-ui .folklore-research-preview-action:after { content:"⛶";font-size:17px;line-height:1;color:var(--uj-vermilion);letter-spacing:0 }
#site-content.folklore-ui .folklore-image-lightbox { width:min(96vw,1600px);max-width:none;height:auto;max-height:96vh;margin:auto;padding:46px 18px 16px;border:1px solid var(--uj-line-strong);border-radius:10px;background:rgba(6,25,29,0.985);color:var(--uj-cream);box-shadow:0 36px 110px rgba(0,0,0,.72);overflow:hidden;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none }
#site-content.folklore-ui .folklore-lightbox-stage { display:flex;align-items:center;justify-content:center;width:100%;max-height:calc(96vh - 100px);overflow:hidden;background:#031215 }
#site-content.folklore-ui .folklore-lightbox-stage img { display:block;max-width:100%;max-height:calc(96vh - 118px);width:auto;height:auto;object-fit:contain;pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none }
#site-content.folklore-ui .folklore-lightbox-close { position:absolute;z-index:2;right:12px;top:10px;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--uj-line-strong);border-radius:50%;background:var(--uj-ink-2);color:#fff;font-size:24px;line-height:1;cursor:pointer }
#site-content.folklore-ui .folklore-lightbox-close:hover,
#site-content.folklore-ui .folklore-lightbox-close:focus-visible { border-color:var(--uj-vermilion);color:var(--uj-vermilion-soft);outline:none }
#site-content.folklore-ui .folklore-lightbox-caption { display:flex;gap:10px;align-items:baseline;justify-content:center;min-height:32px;padding:10px 8px 0;color:var(--uj-cream-muted);font-size:12px }
#site-content.folklore-ui .folklore-lightbox-caption strong { font-family:Georgia,"Times New Roman",serif;font-size:17px;font-weight:400;color:var(--uj-cream) }
#site-content.folklore-ui .folklore-lightbox-caption span { color:#91a6a1 }
@media (max-width:900px) {
#site-content.folklore-ui .folklore-entry-hero-compact { padding:30px 6vw 28px }
#site-content.folklore-ui .folklore-entry-hero-compact:before { right:-4vw;font-size:150px }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy { padding-left:14px }
#site-content.folklore-ui .folklore-entry-hero-compact .folklore-hero-copy h1 { font-size:clamp(40px,12vw,58px) }
#site-content.folklore-ui .folklore-side-stack { position:static;top:auto }
#site-content.folklore-ui .folklore-image-lightbox { width:100vw;max-height:100vh;border-radius:0;border-left:0;border-right:0;padding:50px 8px 12px }
#site-content.folklore-ui .folklore-lightbox-stage { max-height:calc(100vh - 104px) }
#site-content.folklore-ui .folklore-lightbox-stage img { max-height:calc(100vh - 122px) }
}
@media (prefers-reduced-motion:reduce) {
#site-content.folklore-ui .folklore-research-preview-button,
#site-content.folklore-ui .folklore-image-lightbox { scroll-behavior:auto }
}
#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content { position:relative;isolation:isolate;overflow:hidden;background-color:var(--uj-ink);background-image:none;background-size:cover;background-position:center center;background-repeat:no-repeat }
#site-content.folklore-ui .has-folklore-story-background article.prose.folklore-prose.folklore-reading-panel { background:rgba(6,25,29,0.8) }
#site-content.folklore-ui .has-folklore-story-background .folklore-source-card { background:rgba(6,25,29,0.91);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px) }
@media (max-width:900px) {
#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content { background-position:center top }
#site-content.folklore-ui .has-folklore-story-background article.prose.folklore-prose.folklore-reading-panel { background:rgba(6,25,29,0.86) }
}
@media print {
#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content { background-image:none!important }
}
#site-content.folklore-ui .folklore-immersive-hero { min-height:360px;padding-top:58px;padding-bottom:42px }
#site-content.folklore-ui .folklore-immersive-hero .eyebrow { margin-top:0 }
#site-content.folklore-ui .folklore-immersive-hero h1 { margin-top:12px;margin-bottom:18px }
@media (max-width:900px) {
#site-content.folklore-ui .folklore-immersive-hero { min-height:330px;padding-top:46px;padding-bottom:34px }
}
@media (max-width:760px) {
#site-content.folklore-ui .section-heading { align-items:flex-start!important;flex-direction:column;gap:14px }
#site-content.folklore-ui .meta-row { flex-wrap:wrap;gap:8px 12px }
}
@keyframes folkloreHeroDrift{0%{transform:translate3d(-1.2%,0,0) scale(1.055)}100%{transform:translate3d(1.2%,-.8%,0) scale(1.09)}}
@keyframes folkloreAmbientGlow{0%{transform:translate3d(-1.5%,0,0) scale(1)}100%{transform:translate3d(1.5%,-1%,0) scale(1.04)}}
/* Native dialog backdrop is not represented by ordinary element selectors. */
#site-content.folklore-ui .folklore-image-lightbox::backdrop {
  background:rgba(0,0,0,.91); backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px);
}
body.folklore-lightbox-open { overflow:hidden; }
/* Fallback for browsers without showModal; same image/control layout. */
#site-content.folklore-ui .folklore-image-lightbox.is-open {
  position:fixed; z-index:1000; inset:50% auto auto 50%; margin:0; transform:translate(-50%,-50%);
  box-shadow:0 0 0 100vmax rgba(0,0,0,.91);
}

#site-content.folklore-ui .folklore-lightbox-close { font-family:revert; }

/* Keep the translated, closed mobile drawer from widening folklore pages.
 * Clip does not create a new scroll container for the sticky reading sidebar. */
html.folklore-page,
html.folklore-page body { overflow-x:clip; }

/* Release 158.25: compact mythology archive search. */
@media (max-width:760px) {
#site-content.folklore-ui .folklore-search-form { width:100%;min-width:0;margin-bottom:0 }
#site-content.folklore-ui .folklore-search-form input[type=search] { min-height:44px }
}

/* Entitled story artwork is an image layer rather than an inline CSS URL. */
#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content>.folklore-story-backdrop{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center;z-index:-2;pointer-events:none;margin:0}
#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(6,25,29,0.64),rgba(6,25,29,0.4) 50%,rgba(6,25,29,0.62)),linear-gradient(180deg,rgba(6,25,29,0.42),rgba(6,25,29,0.7));pointer-events:none}
@media(max-width:900px){#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content>.folklore-story-backdrop{object-position:center top}}
@media print{#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content>.folklore-story-backdrop,#site-content.folklore-ui .folklore-entry-page.has-folklore-story-background .folklore-entry-content::before{display:none!important}}

#site-content.folklore-ui .tsc-motion-reveal[data-reveal-step="0"]{transition-delay:0ms}
#site-content.folklore-ui .tsc-motion-reveal[data-reveal-step="1"]{transition-delay:55ms}
#site-content.folklore-ui .tsc-motion-reveal[data-reveal-step="2"]{transition-delay:110ms}
#site-content.folklore-ui .tsc-motion-reveal[data-reveal-step="3"]{transition-delay:165ms}
#site-content.folklore-ui .tsc-motion-reveal[data-reveal-step="4"]{transition-delay:220ms}
