.flex{display:flex;justify-content:center}.flex-left{display:flex;gap:8px}.flex-right{padding-left:10px}.anchor-right{margin-left:auto;padding-right:0!important}.Tooltip{font-size:90%;box-sizing:border-box;width:max-content;max-width:450px;z-index:8888;display:inline-flex;justify-content:space-between;color:#fff;background:#333;box-shadow:0 0 10px #0000001a;border-radius:10px;max-width:800px;padding:12px;margin:auto}:root{--leather: #3e4f2f;--leatherHi: #6b7a4b;--leatherShade: #2f3a25;--leatherShadow: #1a2216;--leatherEdge: #32402a;--leatherTrim: #7e8b5a;--textOnLeather: #eef5e2;--paper: #f1e7d0;--paperEdge: #e2d4b6;--paperLight: #fff5dd;--paperCream: #e7dec7;--paperCrease: #6b4e1a18;--paperFold: #00000010;--accentRed: #b02020;--secretRed: #c124a3;--bg1: #1b1b1b;--bg2: #0f0f0f;--headerTop: #233020;--headerBottom: #141c12;--headerBorder: #2a3a26;--gold1: #f8e9a1;--gold2: #f6d860;--gold3: #e8c145;--gold4: #d4a12d;--gold5: #a6781b;--inkLight: #f3e7d8;--bookPad: 2rem;--hinge: 34px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(circle at 20% 10%,var(--bg1),var(--bg2) 70%);font-family:ui-serif,Georgia,serif}.column{display:flex;flex-direction:column;gap:1rem}.row{display:flex;flex-direction:row;gap:1rem}.bookRoot{min-height:100%;min-width:100%;display:flex;flex-direction:column;overflow:hidden}.bookHeader{position:sticky;top:0;z-index:2;display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.8rem 1rem;color:var(--textOnLeather);letter-spacing:.03em;background:var(--headerTop);border-bottom:1px solid var(--headerBorder)}.bookHeader h1{margin:0;font-size:1.05rem;font-weight:700;text-transform:uppercase}.headerBtn{appearance:none;border:1px solid var(--leatherTrim);padding:.5rem .8rem;cursor:pointer;background:repeating-conic-gradient(from 0deg,#0000 0 10deg,#0002 10deg 11deg),linear-gradient(180deg,var(--leatherHi),var(--leather));color:var(--inkLight);border-radius:6px;box-shadow:inset 0 0 0 1px #7a5e4c50,0 2px 6px #0008}.headerBtn:hover{filter:brightness(1.05)}.headerBtn:active{transform:translateY(1px)}.bookWrap{flex:1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:3rem 0}.bookStage{position:relative;width:min(920px,95vw);height:100%}.bookCover{position:relative;width:min(920px,95vw);height:100%;display:flex;flex-direction:column;padding:var(--bookPad);border-radius:14px;background:radial-gradient(120% 80% at 10% 10%,var(--leatherShade) 0%,transparent 60%),radial-gradient(120% 80% at 110% 10%,var(--leatherShade) 0%,transparent 60%),repeating-conic-gradient(from 0deg,#0000 0 11deg,#0001 11deg 12deg),linear-gradient(145deg,var(--leatherHi),var(--leather));box-shadow:0 30px 80px #000c,inset 0 0 0 2px var(--leatherEdge),inset 0 0 60px #0006}.bookBack{position:absolute;top:50%;left:50%;transform:translate(-149%,-50%);z-index:0;pointer-events:none;width:min(920px,95vw);height:100%;padding:2rem;background:radial-gradient(120% 80% at 10% 10%,var(--leatherShade) 0%,transparent 60%),radial-gradient(120% 80% at 110% 10%,var(--leatherShade) 0%,transparent 60%),repeating-conic-gradient(from 0deg,#0000 0 11deg,#0001 11deg 12deg),linear-gradient(145deg,var(--leatherHi),var(--leather));box-shadow:0 30px 80px #000c,inset 0 0 0 2px var(--leatherEdge),inset 0 0 60px #0006;filter:brightness(.6)}.bookCover:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(2px 2px at 20% 30%,#0003 0 40%,#0000 42%),radial-gradient(2px 2px at 60% 70%,#0003 0 40%,#0000 42%),radial-gradient(2px 2px at 80% 40%,#0003 0 40%,#0000 42%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='60' height='60'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='table' tableValues='0 0 0 0.04 0.08'/></feComponentTransfer></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");mix-blend-mode:overlay;opacity:.35}.bookSpine{position:absolute;left:24px;top:12px;bottom:12px;width:18px;border-radius:9px;background:linear-gradient(180deg,var(--leatherEdge),var(--leatherShadow));box-shadow:inset 0 0 0 1px #0006,4px 0 12px #0008}.bookPage{position:relative;min-height:520px;padding:2.2rem 2rem;border-radius:10px;background:radial-gradient(1200px 500px at 30% 10%,var(--paperLight),var(--paper)) no-repeat,radial-gradient(100% 120% at 50% -10%,#fff9,#fff0 60%) no-repeat,conic-gradient(from 180deg at 0% 0%,#00000006,#0000 25%,#00000008,#0000 75%,#00000006);box-shadow:inset 0 0 0 1px #00000010,inset 0 0 60px #00000010,0 1px #fff3,0 14px 40px #0007;border:1px solid var(--paperEdge);max-height:100%;overflow-y:auto}.bookBack,.bookPage.back{padding-right:0!important}.bookPage.back{z-index:3!important;right:-10px}.bookPage h1,.bookPage h2,.bookPage h3{margin-top:0;text-shadow:0 1px 0 #fff6}.bookPage h1{font-size:2rem}.bookPage p{line-height:1.6}.coverPage{position:relative;width:min(830px,95vw);height:min(584px,95vw);padding:2.2rem 2rem;border-radius:10px;background:radial-gradient(120% 80% at 10% 10%,var(--leatherShade) 0%,transparent 60%),radial-gradient(120% 80% at 110% 10%,var(--leatherShade) 0%,transparent 60%),repeating-conic-gradient(from 0deg,#0000 0 11deg,#0001 11deg 12deg),linear-gradient(145deg,var(--leatherHi),var(--leather));box-shadow:inset 0 0 0 1px var(--leatherEdge),inset 0 0 60px #0006,0 20px 40px #0007;border:1px solid var(--leatherEdge)}.coverPage:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(2px 2px at 20% 30%,#0003 0 40%,#0000 42%),radial-gradient(2px 2px at 60% 70%,#0003 0 40%,#0000 42%),radial-gradient(2px 2px at 80% 40%,#0003 0 40%,#0000 42%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='60' height='60'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='table' tableValues='0 0 0 0.04 0.08'/></feComponentTransfer></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");mix-blend-mode:overlay;opacity:.35}.coverPageInner{display:grid;place-items:center;text-align:center;width:100%;height:100%;color:#f3e9dc;text-shadow:0 1px 0 #0008}.coverTitle{margin:0;font-size:2.2rem;letter-spacing:.08em;text-transform:uppercase}.coverSubtitle{margin:.2rem 0 0;opacity:.9}.bookScene{position:relative;margin-left:var(--hinge);width:calc(100% - var(--hinge));min-height:520px;perspective:1600px;height:100%}.pageCard{position:absolute;inset:0;transform-style:preserve-3d;backface-visibility:hidden}.pageUnder{z-index:1}.pageTop,.coverCard{z-index:2}.coverCard{position:absolute;top:0;left:0;width:100%;height:100%;inset:calc(-1 * var(--bookPad)) calc(-1 * var(--bookPad)) calc(-1 * var(--bookPad)) calc(-1 * (var(--bookPad) + var(--hinge)));border-radius:inherit}.hingeLeft{transform-origin:left center}@keyframes pageFlip{to{transform:rotateY(-180deg)}}.pageTop.isTurning.next,.coverCard.isTurning.next{animation:pageFlip .9s cubic-bezier(.4,.2,.2,1) forwards}.pageTop.isTurning.prev,.coverCard.isTurning.prev{animation:pageFlip .9s cubic-bezier(.4,.2,.2,1) reverse forwards}.pageBtn{position:absolute;width:0;height:0;border-style:solid;z-index:5;cursor:pointer;opacity:.8;transition:opacity .2s ease,filter .2s ease}.pageBtn:disabled{opacity:.3;cursor:not-allowed;filter:grayscale(100%)}.pageBtn.prev{bottom:0;left:0;border-style:solid;border-width:48px 0 0 48px;border-color:var(--paperCream) transparent transparent var(--leatherShade);transition:border-color .2s ease}.pageBtn.prev:hover:not(:disabled){border-color:var(--paperCream) transparent transparent var(--accentRed)!important}.pageBtn.next{bottom:0;right:0;border-width:48px 48px 0 0;border-color:var(--leatherShade) var(--paperLight) transparent transparent;transition:border-color .2s ease}.pageBtn.next:hover:not(:disabled){border-color:var(--accentRed) var(--paperLight) transparent transparent!important}.chapterPage{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:1rem}.quote{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;margin:1.5rem auto;max-width:70ch;padding:.75rem;border-left:4px solid var(--accentRed);border-right:4px solid var(--accentRed);border-radius:6px}.quoteText{font-style:italic}.quoteText:before{content:"“";color:var(--accentRed)}.quoteText:after{content:"”";color:var(--accentRed)}.author{font-style:italic;opacity:.3}.author:before{content:"— "}.goldText{background:linear-gradient(to bottom,var(--gold1) 0%,var(--gold2) 25%,var(--gold3) 50%,var(--gold4) 70%,var(--gold5) 100%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 1px 1px #0004,0 0 2px #fef5c4,0 0 10px #a6781b88;font-weight:600}.allCaps{text-transform:uppercase}.fancyCaps{display:inline;text-transform:uppercase;font-variant:small-caps}.fancyCaps .first{font-size:1.2em;font-weight:600}.fancyCaps .rest{font-size:.85em;letter-spacing:.04em}.secret{color:var(--secretRed);font-weight:600}.bookmark{position:absolute;top:0;right:60px;z-index:100;background-color:var(--accentRed);width:80px;height:0px;box-shadow:0 6px 12px #00000040;display:flex;align-items:center;justify-content:center;transition:height .2s ease}.bookmark.full{height:120px;border-radius:0 0 8px 8px;clip-path:polygon(0 0,100% 0,100% 100%,60% 100%,50% 90%,40% 100%,0 100%)}.bookmark.full:hover{height:130px}.bookmark button{background-color:transparent;border:transparent;cursor:pointer;transition:color .2 ease}.bookGlow{position:absolute;pointer-events:none;z-index:1;inset:-24%;opacity:0;transform:scale(1.5);filter:blur(14px);background:radial-gradient(closest-side,color-mix(in srgb,var(--gold1) 70%,transparent) 0%,color-mix(in srgb,var(--gold2) 60%,transparent) 20%,color-mix(in srgb,var(--gold3) 50%,transparent) 40%,color-mix(in srgb,var(--gold4) 35%,transparent) 60%,color-mix(in srgb,var(--gold5) 20%,transparent) 80%,transparent 100%);mix-blend-mode:screen}.bookGlow.play{animation:glowBurst 3s cubic-bezier(.3,.2,.1,1) forwards}.sidebar{position:absolute;top:0;left:0;width:0px;height:100%;z-index:5;padding-left:1rem;opacity:0;overflow-x:hidden;text-overflow:ellipsis;pointer-events:none;white-space:nowrap;font-size:.8rem;background-color:#1112;border-radius:0;color:#fff;transition:width .5s ease,border-radius 1s ease,opacity .5s ease,background-color .5s ease}.sidebar h2{margin-left:2rem}.sidebar h3{margin-left:4rem}.sidebar h4{margin-left:6rem}.sidebar.visible{width:22.5%;border-radius:0 14px 14px 0;opacity:1;pointer-events:auto}.sidebar.visible .clickable{transition:background .5s ease,text-shadow .8s ease,color .5s ease,font-weight .5s ease}.sidebar.visible .clickable.selected,.sidebar.visible .clickable:hover{background:linear-gradient(to bottom,var(--gold1) 0%,var(--gold2) 25%,var(--gold3) 50%,var(--gold4) 70%,var(--gold5) 100%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 1px 1px #0004,0 0 2px #fef5c4,0 0 10px #a6781b88;font-weight:600}.clickable{cursor:pointer}.scrollFade{position:sticky;bottom:0;height:56px;pointer-events:none;z-index:2;background:linear-gradient(to bottom,transparent 0%,var(--paperLight) 100%,var(--paper) 70%);margin-top:-56px}@keyframes glowBurst{0%{opacity:0;transform:scale(.85);filter:blur(18px)}12%{opacity:1;transform:scale(1);filter:blur(12px)}60%{opacity:.65;transform:scale(1.12);filter:blur(18px)}to{opacity:0;transform:scale(1.22);filter:blur(26px)}}@media (max-width: 680px){:root{--headerH: 56px}html,body,#root,.bookRoot{height:100dvh}.bookHeader{display:none}.bookWrap{padding:0;height:calc(100dvh - var(--headerH))}.bookStage,.bookCover{width:100vw;height:100%;border-radius:0;box-shadow:none}.bookCover{padding:12px}.bookBack,.bookSpine{display:none}.bookScene{margin-left:0;width:100%;height:100%;perspective:1200px}.bookPage,.coverPage{width:100%;height:100%;border-radius:0;padding:1.25rem 1rem}.coverCard,.coverPageInner,.chapterPage{inset:0}.bookPage h1{font-size:1.7rem}.bookPage p{line-height:1.55}.pageBtn{opacity:.9}.pageBtn.next{border-width:40px 40px 0 0}.pageBtn.prev{border-width:40px 0 0 40px}.bookmark{right:30px}.bookmark.full{height:80px}.bookmark.full:hover{height:100px}.sidebar{font-size:.7rem;background-color:color-mix(in srgb,var(--accentRed) 80%,transparent)}.sidebar h2{margin-left:.5rem}.sidebar h3{margin-left:1.2rem}.sidebar h4{margin-left:2rem}.sidebar.visible{width:40%}}@media (max-width: 420px){.bookHeader h1{font-size:.95rem}.headerBtn{padding:.45rem .6rem}.bookPage h1{font-size:1.5rem}.quote{margin:1rem auto;padding:.5rem}}.reference{color:#2013ad;cursor:pointer}.reference:hover{color:#4037ff;text-decoration:underline}
