@font-face{font-family:Vazirmatn;src:url(/assets/fonts/Vazirmatn-Variable.woff2) format("woff2");font-weight:100 900;font-display:swap}
/* «کتابخانه الکترونیکی» — reading page. Colours come from the chosen theme (custom properties). */
:root{
      color-scheme:light;--shadow:0 16px 52px rgba(43,35,26,.055);
      --reader-size:19px;--content-width:1150px;--corner:20px;
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:105px}
    body{margin:0;background:var(--bg);color:var(--ink);font-family:"Vazirmatn",Tahoma,Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6;min-width:300px}
    body.dark{color-scheme:dark;--shadow:0 16px 52px rgba(0,0,0,.16)}
    ::selection{background:#d1a39780;color:var(--ink)}
    a{color:inherit;text-decoration:none}
    button{font:inherit}
    button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:6px}
    svg{display:block;flex-shrink:0}
    .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
    .progress{position:fixed;inset:0 0 auto;z-index:1000;height:3px;background:transparent;pointer-events:none}
    .progress>span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),var(--accent));transform-origin:right center;transition:width .12s linear}
    .site-header{position:sticky;top:0;z-index:99;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:var(--bg);background:color-mix(in srgb,var(--bg) 93%,transparent);border-bottom:1px solid var(--line)}
    .header-inner{max-width:var(--content-width);margin:auto;min-height:68px;padding:10px 28px;display:flex;align-items:center;justify-content:space-between;gap:14px}
    .brand{display:inline-flex;align-items:center;gap:11px;font-size:13px;font-weight:750;white-space:nowrap;letter-spacing:0}
    .brand-mark{height:29px;width:29px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--accent);font-size:19px;line-height:1}
    .header-tools{display:flex;align-items:center;gap:6px}
    .tool{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink-soft);padding:7px 10px;cursor:pointer;transition:background .2s,border .2s,color .2s}
    .tool:hover,.tool[aria-pressed="true"]{background:var(--gold-wash);border-color:var(--line);color:var(--ink)}
    .tool svg{height:18px;width:18px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
    .tool-label{font-size:12px;font-weight:600}
    .separator{height:21px;width:1px;background:var(--line);margin:0 4px}
    .container{max-width:var(--content-width);padding:0 28px;margin:0 auto}
    .hero{padding-top:33px}
    .eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--accent);font-weight:700;letter-spacing:.01em;margin:0 2px 16px}
    .eyebrow::before{content:"";width:26px;height:1px;background:var(--accent);flex:0 0 26px}
    .cover-wrap{position:relative;overflow:hidden;border-radius:var(--corner);box-shadow:var(--shadow);background:var(--gold-wash);border:1px solid rgba(125,102,83,.1)}
    .cover-button{display:block;padding:0;border:0;width:100%;cursor:zoom-in;background:transparent;color:inherit;position:relative}
    .cover-button img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
    .cover-hint{position:absolute;bottom:16px;inset-inline-end:16px;display:inline-flex;align-items:center;gap:7px;background:#171817ba;color:#fff;padding:8px 12px;border-radius:100px;font-size:11px;font-weight:600;backdrop-filter:blur(7px)}
    .cover-hint svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.7;fill:none}
    .hero-caption{margin:10px 2px 0;color:var(--muted);font-size:11px;line-height:1.7}
    .intro-head{max-width:870px;margin:39px auto 43px;text-align:center}
    .intro-head .mini-rule{width:62px;height:2px;border-radius:5px;margin:0 auto 21px;background:linear-gradient(90deg,var(--gold),var(--accent))}
    h1{font-size:clamp(29px,4.6vw,51px);font-weight:800;line-height:1.48;letter-spacing:-.04em;margin:0}
    .subtitle{font-size:clamp(15px,2vw,19px);font-weight:500;color:var(--accent);margin:9px 0 16px}
    .dek{max-width:680px;color:var(--ink-soft);line-height:2.05;font-size:15px;margin:0 auto}
    .metadata{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 17px;margin-top:20px;color:var(--muted);font-size:12px}
    .metadata span{display:inline-flex;align-items:center;gap:6px}
    .metadata svg{height:15px;width:15px;stroke:currentColor;fill:none;stroke-width:1.7}
    .reading-shell{display:grid;grid-template-columns:236px minmax(0,1fr);gap:42px;align-items:start;padding-bottom:92px}
    .article-card{min-width:0;grid-column:2;grid-row:1;background:var(--paper);border:1px solid var(--line);border-radius:var(--corner);box-shadow:var(--shadow);padding:clamp(26px,5.8vw,70px) clamp(23px,5.8vw,76px) 60px}
    .article{font-size:var(--reader-size);line-height:2.18;color:var(--ink-soft);font-weight:400;overflow-wrap:break-word}
    .article p{margin:0 0 1.52em;text-align:justify;text-align-last:start;text-justify:inter-word}
    .article p:last-child{margin-bottom:0}
    .article .opening{font-size:1.035em;color:var(--ink);font-weight:500}
    .article .opening:first-letter{color:var(--accent)}
    .section{scroll-margin-top:108px}
    .section-heading{margin:2.8em 0 1.5em;display:flex;align-items:flex-start;gap:17px;color:var(--ink)}
    .section-heading .chapter-no{color:var(--gold);font-size:15px;font-weight:800;border-top:2px solid var(--gold);min-width:34px;padding-top:8px;line-height:1.5;direction:ltr;text-align:center}
    .section-heading small{display:block;color:var(--muted);font-size:12px;line-height:1.5;font-weight:600;margin:0 0 5px}
    .section-heading h2{font-size:clamp(21px,2.6vw,28px);line-height:1.65;font-weight:800;margin:0;letter-spacing:-.025em}
    .story-divider{height:1px;max-width:300px;margin:45px auto;background:linear-gradient(90deg,transparent,var(--line-strong),transparent);position:relative}
    .story-divider::after{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:0 15px;background:var(--paper);color:var(--gold);font-size:15px}
    .dialogue{border-inline-start:2px solid var(--gold);padding-block:3px;padding-inline:19px 0;margin-block:24px 28px;margin-inline:4px 0;color:var(--ink);font-weight:600}
    .dialogue p{margin:0 0 9px;line-height:1.85}
    .dialogue p:last-child{margin:0}
    .pullquote{margin:43px -10px;padding:29px 33px;background:var(--gold-wash);border-radius:14px;border-inline-start:3px solid var(--gold);color:var(--ink);text-align:center;font-size:clamp(20px,2.5vw,25px);font-weight:700;line-height:2.1}
    .pullquote .quote-symbol{display:block;color:var(--gold);font-size:31px;line-height:1;margin-bottom:8px}

    .scene-block{margin:1.9em 0 2.15em;background:linear-gradient(180deg,color-mix(in srgb,var(--gold-wash) 68%,transparent),transparent);border:1px solid var(--line);border-radius:18px;padding:14px 14px 12px;box-shadow:0 10px 30px rgba(45,34,22,.05)}
    .scene-block.compact{max-width:430px}
    .scene-block.align-start{margin-inline-start:0;margin-inline-end:auto}
    .scene-block.align-end{margin-inline-start:auto;margin-inline-end:0}
    .scene-block.align-center{margin-inline:auto}
    .scene-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}
    .scene-tag{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:var(--paper);border:1px solid var(--line-strong);color:var(--accent);padding:6px 12px;font-size:11px;font-weight:800;white-space:nowrap}
    .scene-tag .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);display:inline-block}
    .scene-note{font-size:11px;color:var(--muted);font-weight:600}
    .scene-frame{position:relative;overflow:hidden;border-radius:14px;background:var(--gold-wash);border:1px solid rgba(123,102,82,.14)}
    .scene-frame img{display:block;width:100%;height:auto}
    .scene-caption{margin-top:10px;font-size:13px;line-height:1.95;color:var(--ink-soft);text-align:justify;text-align-last:start}
    .scene-caption strong{color:var(--ink)}


    /* Cinematic five-second prologue – self-contained media */
    .film-section{max-width:870px;margin:-6px auto 62px;padding:0;direction:rtl}
    .film-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 15px}
    .film-kicker{font-size:11px;font-weight:800;color:var(--accent);letter-spacing:.01em;display:flex;align-items:center;gap:9px;margin-bottom:3px}
    .film-kicker:before{content:"";display:inline-block;width:17px;height:2px;background:var(--gold);border-radius:3px}
    .film-heading h2{color:var(--ink);font-size:clamp(20px,2.5vw,25px);font-weight:800;line-height:1.65;margin:0}
    .film-subtitle{color:var(--ink-soft);font-size:12px;line-height:1.9;margin:3px 0 0}
    .film-skip{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;color:var(--accent);border:1px solid var(--line-strong);background:var(--paper);border-radius:999px;padding:7px 14px;font-size:11px;font-weight:750;transition:background .2s,color .2s}
    .film-skip:hover{background:var(--gold-wash);color:var(--ink)}
    .film-stage{position:relative;overflow:hidden;background:#34271f;border-radius:18px;box-shadow:0 18px 50px rgba(32,27,21,.11);border:1px solid var(--line-strong);aspect-ratio:848/432;isolation:isolate}
    .film-stage video{width:100%;height:100%;display:block;object-fit:contain;background:#1e1c1a}
    .film-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:0;background:linear-gradient(180deg,rgba(20,16,12,.03),rgba(20,16,12,.23));cursor:pointer;transition:opacity .25s ease}
    .film-play-circle{display:grid;place-items:center;width:76px;height:76px;color:#fff;background:rgba(30,22,18,.70);border:1px solid rgba(255,255,255,.8);box-shadow:0 5px 36px #0006;border-radius:50%;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .25s,background .25s}
    .film-play svg{height:27px;width:27px;fill:currentColor;stroke:none;transform:translateX(-2px)}
    .film-play:hover .film-play-circle,.film-play:focus-visible .film-play-circle{transform:scale(1.08);background:rgba(99,40,36,.87)}
    .film-play[hidden]{display:none!important}
    .film-footer{display:flex;align-items:start;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;margin:10px 3px 0}
    .film-disclaimer{color:var(--muted);font-size:11px;line-height:1.9;max-width:610px;margin:0}
    .film-duration{display:inline-flex;align-items:center;gap:6px;color:var(--accent);border:1px solid var(--line);border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700;white-space:nowrap}
    @media(max-width:600px){
      .film-section{margin:0 auto 33px}
      .film-heading{align-items:start;gap:9px;flex-direction:column;margin-bottom:10px}
      .film-heading h2{font-size:20px}
      .film-subtitle{font-size:11px}
      .film-skip{font-size:11px;padding:5px 10px}
      .film-stage{border-radius:12px}
      .film-play-circle{width:59px;height:59px}
      .film-play svg{height:23px;width:23px}
      .film-disclaimer{font-size:10px}
    }
    @media print{.film-section{display:none!important}}

    .verse{margin:35px 0 38px;padding:28px 20px 26px;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:linear-gradient(180deg,var(--gold-wash),transparent);text-align:center;font-size:clamp(17px,2.1vw,21px);line-height:2.35;color:var(--ink);font-weight:600}
    .verse p{text-align:center;margin:0 0 15px}
    .verse p:last-child{margin:0}
    .byline{margin-top:46px;padding:23px 0 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;color:var(--ink)}
    .byline strong{display:block;font-size:15px;font-weight:800}
    .byline small{display:block;font-size:12px;color:var(--muted);margin-top:5px}
    .byline .stamp{font-size:11px;border:1px solid var(--line-strong);border-radius:100px;padding:6px 12px;color:var(--muted);white-space:nowrap}
    .endnote{color:var(--muted);font-size:12px!important;line-height:2!important;margin-top:18px!important}
    .side{grid-column:1;grid-row:1;position:sticky;top:100px;display:flex;flex-direction:column;gap:15px;align-self:start}
    .side-box{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:21px 19px}
    .side-kicker{display:block;color:var(--accent);font-size:11px;font-weight:800;margin-bottom:4px}
    .side-title{font-size:16px;font-weight:800;color:var(--ink);margin:0 0 16px}
    .chapter-nav{display:grid;gap:3px;border-inline-start:1px solid var(--line);padding-inline-start:12px}
    .chapter-nav a{position:relative;padding:10px 11px;border-radius:9px;color:var(--muted);font-size:12px;font-weight:600;line-height:1.7;transition:background .2s,color .2s}
    .chapter-nav a::before{content:"";position:absolute;inset-inline-start:-13px;top:15px;width:3px;height:18px;background:transparent;border-radius:4px}
    .chapter-nav a:hover{background:var(--gold-wash);color:var(--ink)}
    .chapter-nav a.active{color:var(--accent);background:var(--accent-wash);font-weight:800}
    .chapter-nav a.active::before{background:var(--accent)}
    .side-note{font-size:12px;line-height:2;color:var(--muted);margin:0}
    .side-stat{display:flex;align-items:baseline;gap:6px;color:var(--ink);font-weight:750;margin:8px 0 3px}
    .side-stat strong{font-size:22px;font-variant-numeric:tabular-nums}
    .remaining{font-size:11px;color:var(--muted)}
    .mobile-toc{display:none;margin:0 0 28px;border:1px solid var(--line-strong);background:var(--gold-wash);border-radius:12px;overflow:hidden}
    .mobile-toc summary{list-style:none;cursor:pointer;padding:13px 17px;display:flex;align-items:center;justify-content:space-between;font-weight:750;font-size:13px;color:var(--ink)}
    .mobile-toc summary::-webkit-details-marker{display:none}
    .mobile-toc summary::after{content:"⌄";color:var(--accent);font-size:20px;line-height:1}
    .mobile-toc[open] summary::after{transform:rotate(180deg)}
    .mobile-toc .chapter-nav{margin:0 13px 14px;gap:0}
    .mobile-toc .chapter-nav a{font-size:13px;padding:8px 9px}
    .float-tools{position:fixed;left:max(24px,calc((100vw - var(--content-width))/2));bottom:25px;z-index:90;display:flex;flex-direction:column;gap:9px}
    .float-btn{width:46px;height:46px;display:grid;place-items:center;background:var(--ui);color:var(--ink);border:1px solid var(--line-strong);box-shadow:0 5px 24px #00000013;border-radius:14px;cursor:pointer;transition:transform .2s,opacity .2s}
    .float-btn svg{height:20px;width:20px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
    .float-btn:hover{transform:translateY(-3px)}
    .top-btn{opacity:0;visibility:hidden;transform:translateY(15px)}
    .top-btn.show{opacity:1;visibility:visible;transform:translateY(0)}
    .font-popover{position:fixed;left:max(24px,calc((100vw - var(--content-width))/2));bottom:130px;z-index:91;background:var(--ui);padding:17px;border:1px solid var(--line-strong);box-shadow:0 15px 55px #00000019;border-radius:16px;width:215px;display:none}
    .font-popover.open{display:block}
    .font-popover>span{display:block;font-size:12px;color:var(--muted);font-weight:650;margin-bottom:13px}
    .font-controls{display:flex;gap:9px;align-items:center;justify-content:space-between}
    .font-controls button{background:var(--gold-wash);color:var(--ink);border:1px solid var(--line);border-radius:9px;height:34px;min-width:38px;cursor:pointer;font-weight:700}
    .font-controls output{font-size:12px;color:var(--ink);font-variant-numeric:tabular-nums}
    .toast{position:fixed;z-index:101;bottom:26px;left:50%;transform:translate(-50%,15px);background:#2c2926;color:#fff;padding:11px 19px;border-radius:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;font-size:12px;box-shadow:0 10px 30px #0003;text-align:center;max-width:90vw}
    .toast.show{opacity:1;transform:translate(-50%,0)}
    dialog{border:0;padding:0;background:transparent;max-width:min(94vw,1280px);width:auto;max-height:94dvh;overflow:visible;color:white}
    dialog::backdrop{background:#0b0b0be3;backdrop-filter:blur(5px)}
    .lightbox-img{max-width:100%;max-height:88dvh;width:auto;height:auto;display:block;object-fit:contain;border-radius:7px}
    .lightbox-close{position:absolute;top:-44px;left:0;display:grid;place-items:center;border:0;border-radius:50%;background:#ffffff23;color:white;width:36px;height:36px;font-size:24px;cursor:pointer}
    .resume{display:none;position:fixed;right:22px;bottom:25px;z-index:91;align-items:center;gap:9px;background:var(--ui);border:1px solid var(--line-strong);border-radius:13px;box-shadow:0 12px 38px #0000001c;padding:10px 12px;color:var(--ink);font-size:12px}
    .resume.show{display:flex}
    .resume button{border:0;background:var(--accent-wash);color:var(--accent);padding:7px 10px;border-radius:8px;cursor:pointer;font-size:11px;font-weight:700}
    .resume button:last-child{background:transparent;color:var(--muted);padding:6px}
    .footer{border-top:1px solid var(--line);padding:26px 0 38px;color:var(--muted);font-size:11px;text-align:center;line-height:2}.footer strong{display:block;color:var(--ink);font-size:13px;font-weight:800;margin-bottom:2px}.footer small{font-size:11px;color:var(--muted)}
    body.focus .side{display:none}
    body.focus .reading-shell{grid-template-columns:minmax(0,830px);justify-content:center}body.focus .article-card{grid-column:1}
    body.focus .article-card{box-shadow:none}
    @media(max-width:980px){
      .reading-shell{grid-template-columns:minmax(0,1fr);max-width:790px;margin:0 auto;gap:0}.article-card{grid-column:1}
      .side{display:none}.mobile-toc{display:block}.hero{padding-top:25px}
      .article-card{padding:36px 36px 50px}
    }
    @media(max-width:600px){
      :root{--reader-size:18px;--corner:15px}
      .container{padding:0 14px}
      .header-inner{padding:8px 15px;min-height:58px}
      .brand{font-size:12px;gap:8px}.brand-mark{width:26px;height:26px;font-size:17px}
      .tool{padding:6px 8px;min-height:34px}
      .tool-label,.separator,.header-share{display:none}
      .tool svg{width:19px;height:19px}
      .hero{padding-top:18px}
      .eyebrow{font-size:11px;margin-bottom:10px}
      .cover-wrap{border-radius:13px}
      .cover-hint{bottom:8px;inset-inline-end:8px;padding:6px 8px;font-size:10px}
      .hero-caption{font-size:10px;margin-top:7px}
      .intro-head{margin:29px auto 28px}
      .intro-head .mini-rule{margin-bottom:14px;width:44px}
      h1{font-size:29px}
      .subtitle{font-size:15px;margin:5px 0 10px}
      .dek{font-size:13px;line-height:1.9}
      .metadata{font-size:11px;gap:5px 14px;margin-top:15px}
      .reading-shell{padding-bottom:56px}
      .article-card{padding:24px 30px 35px;border-radius:15px}
      .scene-block,.scene-block.compact{max-width:100%;padding:11px 11px 10px;border-radius:15px}
      .scene-caption{font-size:12.5px;line-height:1.9}
      .article{line-height:2.06;font-weight:400}
      .article p{margin-bottom:1.32em}
      .article .opening{font-size:1em}
      .section-heading{gap:12px;margin:2.2em 0 1.15em}
      .section-heading h2{font-size:21px}
      .section-heading .chapter-no{min-width:28px;font-size:12px}
      .story-divider{margin:30px auto}
      .dialogue{padding-inline-start:13px;margin:20px 0 25px}
      .pullquote{margin:29px -5px;padding:22px 17px;font-size:20px}
      .verse{margin:26px -4px 28px;padding:20px 12px;font-size:17px}
      .byline{margin-top:30px;padding-top:17px}
      .byline strong{font-size:14px}
      .byline small{font-size:11px}
      .float-tools{left:0;bottom:17px;gap:8px}
      .float-btn{width:43px;height:43px;border-radius:13px}
      .font-popover{left:7px;bottom:111px}
      .resume{right:10px;bottom:15px;left:66px;justify-content:space-between}
    }
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
    @media print{
      @page{size:A4;margin:17mm}
      :root{--bg:#fff;--paper:#fff;--ink:#111;--ink-soft:#222;--reader-size:13px}
      body{background:#fff}.site-header,.progress,.float-tools,.font-popover,.mobile-toc,.side,.resume,.toast,.cover-hint,.footer,.header-tools{display:none!important}
      .container{padding:0;max-width:none}.hero{padding:0}.cover-wrap{box-shadow:none;border:0;border-radius:0}.cover-button{cursor:default}.cover-button img{max-height:100mm;object-fit:contain}
      .intro-head{margin:15mm auto}.reading-shell{display:block}.article-card{padding:0;border:0;box-shadow:none}.article{line-height:1.85}
      .section-heading{page-break-after:avoid;break-after:avoid}.article p{orphans:3;widows:3}
      .pullquote,.verse{break-inside:avoid}.byline{break-inside:avoid}
    }
  

    .scene-block.wide{max-width:920px}
    .scene-block.shrine-block .scene-caption{text-align:center;text-align-last:center}
    .scene-block.shrine-block .scene-frame{box-shadow:0 14px 34px rgba(45,34,22,.08)}


/* STORY VISUAL REFINEMENTS */
.article p{ text-align:justify; text-align-last:start; }
.scene-block{ background:var(--paper); border:1px solid var(--line); box-shadow:none; border-radius:15px; padding:10px; margin:2em auto 2.2em; overflow:hidden; break-inside:avoid; }
.scene-block.compact{max-width:min(100%,560px)}
.scene-block.wide{max-width:100%}
.scene-frame{border-radius:10px; border:none; overflow:hidden;}
.scene-frame img{display:block;width:100%;height:auto;object-fit:contain;}
.scene-caption{padding:0 5px 2px; margin-top:10px; font-size:12px; line-height:2;}
.scene-block.shrine-block{margin:2.5em auto 2.1em;padding:9px;border:1px solid var(--line-strong)}
.scene-block.shrine-block .scene-frame{box-shadow:none;}
.scene-block.shrine-block img{max-height:490px;object-fit:cover;object-position:center 48%;}
.scene-block.shrine-block .scene-caption{font-size:11px;text-align:center;text-align-last:center;}
@media(max-width:600px){
  .scene-block,.scene-block.compact,.scene-block.wide{width:100%;max-width:100%;margin:1.65em auto 1.85em;padding:7px;border-radius:12px;}
  .scene-caption{margin:7px 1px 3px;font-size:11px;line-height:1.9;}
  .scene-block.shrine-block img{max-height:none;object-fit:contain;}
}
@media print{.scene-block{break-inside:avoid;box-shadow:none}.scene-block.shrine-block img{max-height:95mm;object-fit:contain}}

/* additions for the library */
.side-stat .ss-l{font-size:11px;color:var(--muted)}
.tool.lib-back{color:var(--accent)}
.scene-frame video{display:block;width:100%;height:auto;background:#1e1c1a}
.scene-audio{padding:14px}
.scene-audio audio{width:100%;display:block}
.pullquote cite{display:block;margin-top:10px;font-size:13px;font-style:normal;font-weight:600;color:var(--muted)}
.verse p+p{margin-top:15px}
.endnote{margin:18px 0 0}
.kind-tag{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);border-radius:99px;padding:2px 10px;font-size:11px;font-weight:700;color:var(--accent);background:var(--paper)}
.archived-note{max-width:870px;margin:16px auto 0;padding:10px 14px;border:1px dashed var(--line-strong);border-radius:12px;color:var(--muted);font-size:12px;text-align:center}
.preview-bar{position:sticky;top:0;z-index:120;background:#2c2926;color:#fff;font-size:12px;text-align:center;padding:7px 12px}
@media print{.preview-bar,.archived-note{display:none!important}}
.scene-frame img{cursor:zoom-in}
