/* v31p Book reader + footer */
#bkp{display:block!important}
.bkp .bktop .bkbook,.bkp h2.bkname{text-align:left!important;justify-content:flex-start!important;margin-left:0!important}
.bkp h2.bkname{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bkazi{position:relative;display:inline-block;flex:none;padding:0!important;margin:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#8a4a28;cursor:pointer;min-height:0!important;width:auto;vertical-align:middle;border-radius:4px}
.bkazi svg{display:block}.bkazi img{position:absolute;height:auto;pointer-events:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}
.bkazi:focus-visible{outline:2px solid #d8952a;outline-offset:3px}
.bkcols{display:block}
@media(min-width:900px){.bkcols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr);column-gap:26px;align-items:start}.bkr{position:sticky;top:0}}
.bkl>.bkpick{margin-top:14px}
.bkart{box-shadow:0 1px 0 #e4d3b6,0 3px 0 #efe2c9,0 5px 0 #e4d3b6,0 10px 22px rgba(60,35,15,.28)!important;border-radius:3px 6px 6px 3px;outline:1px solid rgba(120,80,40,.18)}
.bkart.turning{backface-visibility:hidden}
/* v31u-pageflip1: rigid hardbound page flip overlay (matches promo video hinge, not soft curl) */
.bkflip-ov{position:fixed;z-index:960;perspective:2000px;perspective-origin:50% 50%;pointer-events:none;overflow:visible;border-radius:16px}
.bkflip-leaf{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform;border-radius:16px}
.bkflip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:16px;overflow:hidden;transform-style:preserve-3d}
.bkflip-face.front{background:#2b2230;box-shadow:0 8px 28px rgba(40,24,10,.28)}
.bkflip-face.front .bkflip-clone,
.bkflip-face.front .bkart{position:relative!important;margin:0!important;max-width:none!important;width:100%!important;height:100%!important;border-radius:0!important;overflow:hidden!important}
.bkflip-face.front .bkflip-clone>img,
.bkflip-face.front .bkart>img{width:100%!important;height:auto!important;display:block!important;max-width:none!important}
.bkflip-face.back{background:#f4eee3;transform:rotateY(180deg);box-shadow:inset 0 0 48px rgba(80,50,20,.12)}
.bkflip-face.back .bkflip-paper{display:block;position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(80,50,20,.14) 0,rgba(80,50,20,.04) 10px,transparent 28px),
  linear-gradient(180deg,#f7f1e6,#fffef8 45%,#efe6d6);border-radius:16px}
.bkflip-shadow{position:absolute;inset:0;border-radius:16px;background:rgba(20,12,6,.4);opacity:0;pointer-events:none;mix-blend-mode:multiply}
.bkflip-leaf.fwd .bkflip-shadow{transform-origin:left center}
.bkflip-leaf.back .bkflip-shadow{transform-origin:right center}
@media(prefers-reduced-motion:reduce){.bkflip-ov{display:none!important}}
.bknav{display:none!important}
.bkcurl{position:absolute!important;bottom:0;z-index:6;padding:0!important;border:0!important;min-height:0!important;cursor:pointer;background:none!important;box-shadow:none!important;--pull:0px;transition:width .15s,height .15s}
.bkcurl.next{right:0;width:calc(96px + var(--pull));height:calc(78px + var(--pull));background:transparent url(images/page-curl-br-v1.webp) right bottom / contain no-repeat!important;border-radius:0!important;filter:drop-shadow(-1px -2px 3px rgba(0,0,0,.28))}
.bkcurl.back{left:0;width:calc(84px + var(--pull));height:calc(68px + var(--pull));background:transparent url(images/page-curl-bl-v1.webp) left bottom / contain no-repeat!important;border-radius:0!important;filter:drop-shadow(1px -2px 3px rgba(0,0,0,.28))}
.bkcurl:hover{--pull:10px}.bkcurl:focus-visible{outline:3px solid #d8952a;outline-offset:-3px}
.bkcurl.end{width:auto;min-width:110px;height:auto;padding:28px 10px 8px 26px!important;cursor:default;font:600 11px Georgia,serif;color:#6b4a30}
.bkcurl.end span{display:block;text-align:right}
@media(prefers-reduced-motion:reduce){.bkcurl{transition:none}}
.bkzipc.nofl{background:none!important}
.bkchip{position:relative}.bkperch{position:absolute;right:-12px;top:-30px;width:40px;height:auto;pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.3));z-index:3}
.bkchip.zipon{box-shadow:0 0 0 2px #d8952a!important}
.bkph.bkpaint img{border-radius:10px;background:none}
/* lightbox */
.bkzm{position:fixed;inset:0;z-index:1300;background:rgba(20,14,8,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px}
.bkzm .bkx{position:absolute;top:10px;right:10px;z-index:3}
.bkzst{position:relative;overflow:hidden;width:100%;flex:1;display:flex;align-items:center;justify-content:center;touch-action:none}
.bkzst img{max-width:96vw;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);transform-origin:center;user-select:none;-webkit-user-drag:none;transition:transform .08s}
.bkzm.zin .bkzst img{cursor:grab}
.bkzbar{display:flex;gap:8px;padding:8px}.bkzb{min-width:44px;min-height:40px;border-radius:20px;border:0;background:#fbf3e4;color:#4a2f1c;font:600 16px Georgia,serif}.bkzb:disabled{opacity:.45}
@media(prefers-reduced-motion:reduce){.bkzst img{transition:none}}
/* footer */
#updates:not(.lefuin),#hello{display:none!important}
.lefoot{display:flex;flex-wrap:wrap;gap:4px 16px;justify-content:center;align-items:center;padding:14px 12px 18px;margin-top:18px;border-top:1px solid rgba(110,130,80,.35);font:13px/1.5 Georgia,serif;color:#5f6e48;background:none}
.lefoot a,.lefoot button{color:#4f6a3a;text-decoration:underline;text-underline-offset:2px;background:none!important;border:0!important;padding:0!important;font:inherit;cursor:pointer;min-height:0!important;box-shadow:none!important;width:auto}
.lefoot a:hover,.lefoot button:hover{color:#2f4a22}
.lefu{position:fixed;inset:0;z-index:1400;background:rgba(40,28,18,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.lefubox{position:relative;background:#f8efe0;border-radius:14px;max-width:420px;width:100%;padding:8px 14px 14px}
.lefubox #updates{display:block!important;margin:0;box-shadow:none}.lefux{position:absolute;top:8px;right:8px;border:0;background:none;font-size:18px;cursor:pointer;min-height:0;width:auto}
/* journal: its own full-screen view */
html.lejopen,html.lejopen body{overflow:hidden!important}
.jmo{background:#efe4cf!important}
.bkcols{width:100%;margin:0!important;max-width:none!important}.bkl,.bkr{min-width:0}
.bkl>.bkart{width:100%!important;position:relative!important;margin:4px 0 0!important}
.bkl>.bkart>img{width:100%!important;height:auto;display:block}
#bkp .bkzipc .bkflpaint{position:absolute!important;height:130px!important;width:auto!important;max-width:150px!important;left:50%!important;right:auto!important;bottom:8px!important;transform:translateX(-50%)!important;border-radius:0!important;box-shadow:none!important;outline:none!important;border:0!important;background:none!important}
#bkp>.bkcols{grid-column:1/-1!important}

/* v31u-navback1: book page uses standard ← Go Back (not white circle ✕) */
#bkp .bktop{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#bkp .bktop .legoback{flex:0 0 auto;margin:0}
#bkp .bktop .bkbook{flex:1 1 auto;margin:0}
/* reduce press flash on explorer chips */
#bkp .bkchip{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#bkp .bkchip:active{transform:none}
#bkp{scroll-behavior:auto}

/* v31u-milomc1: Milo/Maisie multiple-choice (tap A/B/C, no typing) */
#bkp .bkmc{margin:0 0 14px}
#bkp .bkmcq{margin:0 0 8px;line-height:1.35}
#bkp .bkmcopts{display:flex;flex-direction:column;gap:8px}
#bkp .bkmcbtn{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;padding:10px 12px;min-height:48px;border-radius:12px;border:1.5px solid #c9b48f;background:#fffaf1;color:#4a2f1c;font:600 .95rem/1.35 Georgia,serif;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#bkp .bkmcbtn:hover:not(:disabled){border-color:#c4502e;background:#fff6ea}
#bkp .bkmcbtn:focus-visible{outline:2px solid #d8952a;outline-offset:2px}
#bkp .bkmcbtn .bkmcltr{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#c4502e;color:#fff;font:bold .9rem Georgia,serif}
#bkp .bkmcbtn .bkmctxt{flex:1 1 auto;padding-top:3px}
#bkp .bkmcbtn.ok{border-color:#3f7a4a;background:#e8f3ea}
#bkp .bkmcbtn.ok .bkmcltr{background:#3f7a4a}
#bkp .bkmcbtn.no{border-color:#a84a3a;background:#fceceb}
#bkp .bkmcbtn:disabled{cursor:default;opacity:1}
#bkp .bkmcbtn:disabled:not(.ok):not(.no){opacity:.7}

/* v31u-navseq17 Brad: location stamp mid-spread (between corners); Zip stays top/bottom corner */
#bkp .bkart>.bkazi{
  position:absolute!important;left:50%!important;top:10px!important;right:auto!important;bottom:auto!important;
  transform:translateX(-50%)!important;z-index:5;margin:0!important;
  filter:drop-shadow(0 2px 4px rgba(40,24,10,.35));
}
#bkp .bkart>.bkazi:hover,#bkp .bkart>.bkazi:focus-visible{transform:translateX(-50%) scale(1.06)!important}
@media(prefers-reduced-motion:reduce){#bkp .bkart>.bkazi:hover,#bkp .bkart>.bkazi:focus-visible{transform:translateX(-50%)!important}}
