/* JR Bookstore — premium editorial presentation, additive to the frozen brand system.
   No changes to official covers, seller-authored prices, stock, donation or checkout logic. */
.book-store-shell{
  --jr-store-surface:#101722;--jr-store-surface-raised:#172233;
  --jr-store-rule:rgba(203,172,106,.23);--jr-store-gold:#d7b981;
  --jr-store-ivory:#f8f2e8;--jr-store-muted:#c0bbaf;
  width:min(1280px,calc(100% - clamp(24px,4.8vw,88px)));
  padding-block-start:clamp(22px,4vw,56px);
}
.book-store-shell #book-catalog{scroll-margin-top:96px;margin-top:clamp(35px,5vw,80px)}
.book-store-shell .store-catalog-heading{
  position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);
  column-gap:clamp(24px,5vw,100px);align-items:end;margin-bottom:clamp(20px,3vw,36px);
  padding:0 0 clamp(18px,3vw,30px);border-bottom:1px solid var(--jr-store-rule);
}
.book-store-shell .store-catalog-heading .kicker{grid-column:1/-1;letter-spacing:.14em;color:var(--jr-store-gold)}
.book-store-shell .store-catalog-heading h2{grid-column:1;margin:0;font-size:clamp(29px,3.6vw,51px);line-height:1.25;letter-spacing:-.025em;color:var(--jr-store-ivory)}
.book-store-shell .store-catalog-heading>p:not(.kicker){grid-column:2;grid-row:2;margin:0;color:var(--jr-store-muted);line-height:1.9;max-width:48ch}
.book-store-shell .book-store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(16px,2vw,28px)}
.book-store-shell .book-product-card{
  position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;
  border:1px solid var(--jr-store-rule);border-radius:26px;
  background:linear-gradient(154deg,rgba(255,255,255,.045),rgba(255,255,255,.006) 34%),
             linear-gradient(178deg,#182234,#0d151e 74%,#0c1219);
  box-shadow:0 22px 68px rgba(0,0,0,.2);
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.book-store-shell .book-product-card:focus-within,
.book-store-shell .book-product-card:hover{border-color:rgba(227,195,128,.5);box-shadow:0 28px 76px rgba(0,0,0,.3)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.book-store-shell .book-product-card:hover{transform:translateY(-3px)}}
.book-store-shell .book-product-card .book-cover,
.book-store-shell .book-product-card .book-cover-placeholder{
  display:grid;place-items:center;position:relative;margin:0;min-width:0;
  width:100%;aspect-ratio:1.03/1;overflow:hidden;
  padding:clamp(18px,3vw,34px);
  background:radial-gradient(ellipse at 50% 3%,rgba(218,178,111,.19),transparent 58%),
             radial-gradient(ellipse at 50% 105%,rgba(86,117,139,.15),transparent 65%),
             #0e1420;
  border-bottom:1px solid var(--jr-store-rule);
}
.book-store-shell .book-product-card .book-cover:after,
.book-store-shell .book-product-card .book-cover-placeholder:after{
  content:"";position:absolute;inset:clamp(10px,1.6vw,19px);
  border:1px solid rgba(221,196,147,.13);border-radius:13px;pointer-events:none;
}
.book-store-shell .book-product-card .book-cover img{
  display:block;width:auto;max-width:min(76%,260px);height:100%;max-height:350px;
  object-fit:contain;filter:drop-shadow(12px 18px 21px rgba(0,0,0,.48));
  transition:transform .26s ease;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.book-store-shell .book-product-card:hover .book-cover img{transform:translateY(-3px)}}
.book-store-shell .book-product-card .book-cover-placeholder strong{
  font-size:clamp(22px,2.4vw,34px);line-height:1.6;text-align:center;color:var(--jr-store-ivory);
}
.book-store-shell .book-product-copy{display:flex;flex-direction:column;flex:1;min-width:0;padding:clamp(22px,2.2vw,32px);gap:11px}
.book-store-shell .book-product-copy .status-chip{
  align-self:flex-start;font-size:.71rem;letter-spacing:.02em;line-height:1.4;
  color:#e3c99a;background:rgba(213,179,114,.09);padding:5px 10px;
  border-radius:99px;border:1px solid rgba(213,179,114,.22);
}
.book-store-shell .book-product-copy h2{font-size:clamp(22px,2vw,29px);line-height:1.5;letter-spacing:-.012em;margin:0;color:var(--jr-store-ivory)}
.book-store-shell .book-product-copy>p{color:var(--jr-store-muted);font-size:clamp(.91rem,.95vw,.99rem);line-height:1.95;margin:0;flex:1}
.book-store-shell .book-product-copy .book-price{
  padding-block:14px 5px;margin:5px 0 0;border-top:1px solid rgba(207,176,111,.23);
  color:#f2d6a0;font-size:clamp(1.08rem,1.35vw,1.28rem);font-variant-numeric:tabular-nums;
}
.book-store-shell .book-product-copy .actions{margin-top:3px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-items:stretch}
.book-store-shell .book-product-copy .actions .button,
.book-store-shell .book-product-copy .actions button{
  display:flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;
  padding:11px 12px;text-align:center;border-radius:12px;font-size:.88rem;line-height:1.55;
}
.book-store-shell .book-product-copy .actions .button.primary{
  color:#171b22;background:linear-gradient(130deg,#f2daa9,#cfaa6b);
  border-color:#dbbd85;font-weight:750;
}
.book-store-shell .book-product-copy .actions .book-pending{grid-column:1/-1;line-height:1.8}
.book-store-shell .store-nav a{min-height:48px}
.book-store-shell :is(.book-product-copy,.store-catalog-heading,.book-store-hero) :is(a,button):focus-visible{
  outline:3px solid #f5d699;outline-offset:3px;
}
.book-store-shell .store-faq .store-faq-item{border-color:rgba(207,176,111,.22)}
.book-store-shell .store-faq .store-faq-item summary{min-height:48px;outline-offset:4px}
.book-store-shell .store-mission{border-color:rgba(207,176,111,.24)}
@media(max-width:1040px){
 .book-store-shell .book-store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .book-store-shell .store-catalog-heading{grid-template-columns:minmax(0,1fr)}
 .book-store-shell .store-catalog-heading>p:not(.kicker){grid-column:1;grid-row:auto;max-width:65ch;margin-top:12px}
}
@media(max-width:690px){
 .book-store-shell{width:calc(100% - 24px)}
 .book-store-shell .book-store-grid{grid-template-columns:minmax(0,1fr)}
 .book-store-shell .book-product-card{border-radius:22px}
 .book-store-shell .book-product-card .book-cover{aspect-ratio:1.1/1}
 .book-store-shell .book-product-copy{padding:22px}
 .book-store-shell .store-catalog-heading h2{font-size:clamp(26px,6vw,37px)}
 .book-store-shell .book-product-copy .actions .button{min-height:48px}
}
@media(max-width:360px){.book-store-shell .book-product-copy .actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
 .book-store-shell .book-product-card,
 .book-store-shell .book-product-card .book-cover img{transition:none!important;transform:none!important}
}
@media(forced-colors:active){
 .book-store-shell .book-product-card{border:1px solid CanvasText}
 .book-store-shell .book-product-copy .status-chip{border:1px solid CanvasText}
}


/* JR Store mobile-first couture finishing pass — shared master palette,
   official product images only, no speculative product or price claims. */
.book-store-shell .book-product-copy{isolation:isolate}
.book-store-shell .book-product-card .book-cover{
  background:
    radial-gradient(ellipse at 50% 18%,color-mix(in srgb,var(--jr-store-gold) 20%,transparent),transparent 61%),
    linear-gradient(165deg,#202126 0%,#0b0c10 72%);
}
.book-store-shell .book-product-card .book-cover img{filter:drop-shadow(15px 21px 25px rgba(0,0,0,.58))}
.book-store-shell .book-product-card .book-cover:before{
  content:"";position:absolute;inset:16% 19% 7%;border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(212,175,55,.12),transparent 75%);
  filter:blur(26px);pointer-events:none
}
.book-store-shell .book-product-card .book-cover img{position:relative;z-index:1}
.book-store-shell .book-price{letter-spacing:.005em}
.book-store-shell .book-product-copy .actions>.book-pending{font-size:.85rem}
.book-store-shell .book-product-card .actions .button.primary:focus-visible{
  outline:3px solid var(--jr-store-ivory);outline-offset:3px
}
@media(max-width:690px){
 .book-store-shell{
   width:min(100% - 24px,520px);margin-inline:auto;
   padding-block-start:18px;padding-block-end:132px
 }
 .book-store-shell .book-store-hero{
   display:flex;flex-direction:column;align-items:stretch;
   gap:16px;padding:clamp(16px,4.5vw,24px);border-radius:25px;
   background:linear-gradient(155deg,#1F1F1F,#0B0B0B);
 }
 /* English image-stage and Persian cinematic figure use different,
    existing, approved source markup. Keep both variants in one design layer. */
 .book-store-shell .book-store-hero:not(.cinema-original-hero) .bookstore-hero-stage{
   order:-1;min-width:0;width:100%;display:grid;gap:12px;
 }
 .book-store-shell .book-store-hero:not(.cinema-original-hero) .bookstore-hero-art{
   margin:0;min-width:0;overflow:hidden;border-radius:16px;
 }
 .book-store-shell .book-store-hero:not(.cinema-original-hero) .bookstore-hero-art img{
   display:block;width:100%;height:auto;max-height:320px;
   object-fit:contain;border-radius:16px;
 }
 /* Match the actual Persian cinema-original-hero markup. */
 .book-store-shell .book-store-hero.cinema-original-hero{
   display:grid;grid-template-columns:minmax(0,1fr);
   gap:0;padding:0;overflow:hidden;
 }
 .book-store-shell .cinema-original-hero .cinema-hero-picture{
   order:0;display:block;position:relative;min-width:0;
   width:100%;max-height:340px;aspect-ratio:1090 / 640;
   margin:0;overflow:hidden;
 }
 .book-store-shell .cinema-original-hero .cinema-hero-picture picture,
 .book-store-shell .cinema-original-hero .cinema-hero-full{
   display:block;width:100%;height:100%;object-fit:cover;
 }
 .book-store-shell .cinema-original-hero .cinema-hero-copy{
   order:1;position:static;width:auto;height:auto;min-width:0;
   margin:0;padding:18px 18px 6px;
   overflow:visible;clip-path:none;white-space:normal;
 }
 .book-store-shell .cinema-original-hero .cinema-hero-nav{
   order:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
   gap:9px;margin:0;padding:12px 18px 20px;
 }
 .book-store-shell .cinema-original-hero .cinema-hero-nav>a{
   display:inline-flex;align-items:center;justify-content:center;
   min-width:0;min-height:48px;text-align:center;line-height:1.5;
   padding:10px 9px;overflow-wrap:anywhere;
 }
 .book-store-shell .cinema-original-hero .cinema-hero-hotspot{display:none}
 .book-store-shell .book-store-hero h1{
   font-size:clamp(29px,7.5vw,39px);line-height:1.23;
   margin-block:10px 14px;
 }
 .book-store-shell .book-store-hero .lead{font-size:.93rem;line-height:1.85}
 .book-store-shell .cinema-original-hero .cinema-hero-nav{
   gap:9px
 }
 .book-store-shell .cinema-original-hero .cinema-hero-nav .button{
   min-width:0;justify-content:center;text-align:center;line-height:1.45;
   padding:10px 8px;min-height:48px
 }
 .book-store-shell #book-catalog{margin-top:33px;scroll-margin-top:72px}
 .book-store-shell .store-catalog-heading{
   gap:8px;margin-bottom:18px;padding-bottom:17px
 }
 .book-store-shell .store-catalog-heading h2{
   font-size:clamp(25px,6.6vw,35px);line-height:1.35
 }
 .book-store-shell .book-store-grid{gap:20px}
 .book-store-shell .book-product-card{
   border-radius:25px;
   box-shadow:0 19px 50px rgba(0,0,0,.36);
 }
 .book-store-shell .book-product-card .book-cover{
   min-height:270px;aspect-ratio:1.08 / 1;
   padding:20px
 }
 .book-store-shell .book-product-card .book-cover img{max-width:70%;max-height:310px}
 .book-store-shell .book-product-copy{
   padding:20px 19px 23px;gap:9px
 }
 .book-store-shell .book-product-copy>p{line-height:1.85;font-size:.94rem}
 .book-store-shell .book-product-copy .actions{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:350px){
 .book-store-shell .book-product-copy .actions{grid-template-columns:1fr}
 .book-store-shell .cinema-original-hero .cinema-hero-nav{grid-template-columns:1fr}
}


/* JR verified bookstore bibliographic microgrid — real catalogue fields only.
   Distinguish publication/CIP year from the first physical printing year. */
.book-store-shell .book-catalog-imprint{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:8px 10px;margin:6px 0 5px;padding:15px 0;
 border-block:1px solid rgba(212,175,55,.18)
}
.book-store-shell .book-catalog-imprint>div{
 min-width:0;border:1px solid rgba(212,175,55,.12);
 border-radius:12px;background:rgba(212,175,55,.045);
 padding:10px 11px;display:flex;flex-direction:column;gap:5px
}
.book-store-shell .book-catalog-imprint dt{
 margin:0;color:#C2B8AA;font-size:.77rem;line-height:1.55
}
.book-store-shell .book-catalog-imprint dd{
 margin:0;min-width:0;overflow-wrap:anywhere;
 color:#F8F5E9;font-size:.87rem;line-height:1.6;font-weight:650
}
.book-store-shell .book-catalog-imprint dd[dir="ltr"]{
 unicode-bidi:isolate;text-align:start;font-variant-numeric:tabular-nums
}
@media(max-width:355px){
 .book-store-shell .book-catalog-imprint{
  grid-template-columns:minmax(0,1fr);gap:6px
 }
 .book-store-shell .book-catalog-imprint>div{
  flex-direction:row;justify-content:space-between;flex-wrap:wrap
 }
}
@media(forced-colors:active){
 .book-store-shell .book-catalog-imprint>div{border:1px solid CanvasText}
}

/* Bilingual bookstore long-form readability; deliberately preserve centred
   product artwork, card titles and CTA composition. */
.book-store-shell :where(.store-mission,.support-panel,.store-catalog-heading,
 .book-product-copy,.store-faq-item,.store-faq-contact) :where(p,li,blockquote){
 text-align:start;overflow-wrap:anywhere;text-wrap:pretty;
}
.book-store-shell :where(h1,h2,h3,h4){overflow-wrap:break-word;text-wrap:balance}
.book-store-shell :where([dir="ltr"],[lang="en"]){
 direction:ltr;unicode-bidi:isolate;
}
.book-store-shell :where([dir="rtl"],[lang="fa"]){
 direction:rtl;unicode-bidi:isolate;
}
@media(max-width:430px){
 .book-store-shell :where(.store-catalog-heading,.store-faq-item,.support-panel){
  min-width:0;max-width:100%;
 }
}

/* Crawlable bibliographic book inventory: visible without catalogue JS,
   no invented price/stock, and links to stable canonical book anchors. */
.book-store-shell .store-discovery-library{
 margin-block:clamp(30px,5vw,64px);
 padding:clamp(22px,3vw,36px);
 border:1px solid var(--jr-store-rule,rgba(203,172,106,.23));
 border-radius:24px;
 background:linear-gradient(155deg,rgba(215,185,129,.07),rgba(255,255,255,.014));
}
.book-store-shell .store-discovery-library>h2{
 margin:8px 0 16px;
 font-size:clamp(1.5rem,2.8vw,2.15rem);
 line-height:1.5;color:var(--jr-store-ivory,#f8f2e8);
}
.book-store-shell .store-discovery-library>p{
 max-width:94ch;margin:10px 0 20px;
 line-height:1.9;text-align:start;
 overflow-wrap:anywhere;color:var(--jr-store-muted,#c0bbaf);
}
.book-store-shell .store-discovery-grid{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:clamp(12px,2vw,21px);align-items:stretch;
}
.book-store-shell .store-discovery-grid>article{
 min-inline-size:0;padding:clamp(17px,2.3vw,25px);
 border:1px solid var(--jr-store-rule,rgba(203,172,106,.23));
 border-radius:17px;background:rgba(5,8,12,.25);
}
.book-store-shell .store-discovery-grid h3{
 margin:0 0 11px;font-size:clamp(1.1rem,1.9vw,1.34rem);
 line-height:1.7;overflow-wrap:anywhere;
}
.book-store-shell .store-discovery-grid h3 a{
 color:var(--jr-store-gold,#d7b981);
 text-decoration:underline;text-underline-offset:4px;
}
.book-store-shell .store-discovery-grid h3 a:focus-visible{
 outline:3px solid var(--jr-store-gold,#d7b981);outline-offset:4px;
}
.book-store-shell .store-discovery-grid p{
 margin:0;line-height:1.85;text-align:start;
 overflow-wrap:anywhere;color:var(--jr-store-muted,#c0bbaf);
}
.book-store-shell .store-discovery-grid bdi{
 unicode-bidi:isolate;direction:ltr;
 font-variant-numeric:tabular-nums;
}
.book-store-shell .store-discovery-library .store-discovery-footnote{
 margin:22px 0 0;font-size:.93rem;
}
.book-store-shell .store-discovery-library .store-discovery-footnote a{
 color:var(--jr-store-gold,#d7b981);text-underline-offset:3px;
}
@media(max-width:700px){
 .book-store-shell .store-discovery-grid{grid-template-columns:minmax(0,1fr)}
 .book-store-shell .store-discovery-library{padding:clamp(16px,4vw,24px)}
}

/* Bookstore edition: static brass edges plus progressive hover lighting.
   No additional images, JS, continuous animations, or layout shifts. */
.book-store-shell .store-discovery-grid>article{
 box-shadow:inset 0 1px 0 rgba(244,217,155,.06);
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .book-store-shell .store-discovery-grid>article:hover{
  border-color:rgba(230,193,119,.60);
  box-shadow:inset 0 1px 0 rgba(255,231,183,.16),0 13px 32px rgba(0,0,0,.22);
 }
 .book-store-shell .store-discovery-grid h3>a:hover{
  color:#ffdf9f;
 }
}
.book-store-shell .store-discovery-grid h3>a:focus-visible{
 outline:3px solid #ffde9c;outline-offset:4px;
}

/* Persian book catalogue display and bibliography. Extend the self-hosted
   Persian heading face without loading a second font or changing prices. */
html[lang="fa"] .book-store-shell
 :is(.store-catalog-heading,.store-discovery-library,.book-product-card,.store-mission,.store-faq,.support-panel)
 :is(h1,h2,h3,h4,h5,h6){
 font-family:var(--jr-fa-display,"JR Persian Display","Vazirmatn",Tahoma,sans-serif)!important;
 font-style:normal;font-synthesis:none;
 letter-spacing:normal!important;text-transform:none;
 overflow-wrap:break-word;text-wrap:balance;
 line-height:1.58;
}
html[lang="fa"] .book-store-shell
 :is(.store-catalog-heading,.store-discovery-library,.book-product-card,.store-mission,.store-faq,.support-panel)
 :is(h1,h2){font-weight:750}
html[lang="fa"] .book-store-shell
 :is(.store-catalog-heading,.store-discovery-library,.book-product-card,.store-mission,.store-faq,.support-panel)
 :is(h3,h4,h5,h6){font-weight:670}
html[lang="fa"] .book-store-shell :where(.store-discovery-library,.book-product-copy,.store-faq-item,.support-panel) :where(p,li,blockquote){
 text-align:start;overflow-wrap:anywhere;
}
html[lang="fa"] .book-store-shell :where(bdi,[lang="en"],[dir="ltr"]){
 direction:ltr;unicode-bidi:isolate;
}
