:root{--table:#141316;--table-2:#1f1d22;--paper:#f5f2ec;--paper-2:#ebe6dd;--ink:#24201c;--ink-2:#5d554d;--ink-3:#8c837a;--liver:#5a3a2e;--liver-2:#7a5241;--cover:#3b2a24;--cover-ink:#e9ddd0;--rule:#24201c24;--display:"Bodoni Moda", "Didot", "Playfair Display", Georgia, serif;--text:"Newsreader", Georgia, "Times New Roman", serif;--sans:"Nunito Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--table);color:var(--cover-ink);font-family:var(--text);-webkit-font-smoothing:antialiased;touch-action:manipulation;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:focus-visible{outline:2px solid var(--cover-ink);outline-offset:3px;border-radius:2px}a:focus-visible{outline:2px solid var(--cover-ink);outline-offset:3px;border-radius:2px}img{max-width:100%;display:block}.app{height:100%;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);grid-template-rows:auto 1fr auto;display:grid}.topbar{justify-content:space-between;align-items:center;gap:12px;padding:10px 16px 6px;display:flex}.brand{font-family:var(--display);letter-spacing:.01em;color:var(--cover-ink);align-items:baseline;gap:10px;font-size:17px;display:flex}.brand i{color:#b7aa9c;font-size:14px;font-style:italic;font-weight:400}.topbar .actions{gap:6px;display:flex}.iconbtn{width:40px;height:40px;color:var(--cover-ink);background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.iconbtn:hover{background:#ffffff1f}.iconbtn svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.stage{justify-content:center;align-items:center;min-height:0;padding:6px 10px;display:flex;position:relative}.stage .book-shadow{filter:blur(10px);pointer-events:none;background:radial-gradient(closest-side,#0000008c,#0000);width:60%;height:24px;position:absolute;top:auto;bottom:2%;left:auto;right:auto}.flipbook{z-index:1;position:relative}.bottombar{align-items:center;gap:14px;padding:8px 16px 12px;display:flex}.ribbon{flex:1;align-items:center;height:28px;display:flex;position:relative}.ribbon input[type=range]{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;margin:0}.ribbon input[type=range]::-webkit-slider-runnable-track{background:#ffffff38;height:2px}.ribbon input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--cover-ink);border-radius:50%;width:14px;height:14px;margin-top:-6px}.ribbon input[type=range]::-moz-range-track{background:#ffffff38;height:2px}.ribbon input[type=range]::-moz-range-thumb{background:var(--cover-ink);border:0;border-radius:50%;width:14px;height:14px}.ribbon .marks{pointer-events:none;position:absolute;top:0;bottom:0;left:7px;right:7px}.ribbon .marks i{background:#ffffff59;width:1px;height:10px;position:absolute;top:9px}.pagenum{font-family:var(--sans);color:#b7aa9c;font-variant-numeric:tabular-nums;text-align:right;min-width:86px;font-size:12px}.chapname{font-family:var(--text);color:#d8cdbf;white-space:nowrap;text-overflow:ellipsis;max-width:42vw;font-size:14px;font-style:italic;overflow:hidden}.page{background:var(--paper);color:var(--ink);-webkit-user-select:none;user-select:none;overflow:hidden;container-type:size}.page.hard{background:var(--cover);color:var(--cover-ink)}.page-inner{flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.page.--left:after,.page.--right:after{content:"";pointer-events:none;width:7%;position:absolute;top:0;bottom:0}.page.--left:after{background:linear-gradient(90deg,#0000,#00000012);right:0}.page.--right:after{background:linear-gradient(270deg,#0000,#00000012);left:0}.folio{text-align:center;font-family:var(--sans);color:var(--ink-3);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:clamp(9px,2.3cqw,12px);position:absolute;bottom:3.2cqh;left:0;right:0}.cover{position:absolute;top:0;bottom:0;left:0;right:0}.cover .photo{background-position:50%;background-size:cover;position:absolute;top:0;bottom:0;left:0;right:0}.cover .wash{background:linear-gradient(#1c120e0d 0%,#1c120e59 55%,#1c120eeb 100%);position:absolute;top:0;bottom:0;left:0;right:0}.cover .frame{pointer-events:none;border:1px solid #e9ddd073;position:absolute;top:4.5%;bottom:4.5%;left:4.5%;right:4.5%}.cover .title{color:var(--cover-ink);position:absolute;bottom:11%;left:10%;right:10%}.cover h1{font-family:var(--display);letter-spacing:-.01em;margin:0;font-size:clamp(34px,17cqw,120px);font-weight:400;line-height:.95}.cover .tag{font-family:var(--display);color:#d9c9b8;margin:2.5cqh 0 0;font-size:clamp(14px,5.2cqw,34px);font-style:italic;font-weight:400}.cover .years{font-family:var(--sans);letter-spacing:.16em;color:#b6a692;margin-top:3cqh;font-size:clamp(9px,2.4cqw,13px)}.backcover .title{top:12%;bottom:auto}.backcover p{font-family:var(--text);color:#d9c9b8;max-width:22em;margin:0;font-size:clamp(13px,4.2cqw,26px);font-style:italic;line-height:1.35}.backcover .sign{font-family:var(--sans);letter-spacing:.08em;color:#b6a692;margin-top:3cqh;font-size:clamp(9px,2.4cqw,13px)}.titlepage{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:10% 12%;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.titlepage h1{font-family:var(--display);margin:0;font-size:clamp(30px,14cqw,96px);font-weight:400;line-height:1}.titlepage .tag{font-family:var(--display);color:var(--liver);margin:2cqh 0 0;font-size:clamp(13px,4.6cqw,30px);font-style:italic}.titlepage .dates{font-family:var(--sans);letter-spacing:.14em;color:var(--ink-3);margin-top:4cqh;font-size:clamp(9px,2.3cqw,12px)}.titlepage .intro{font-family:var(--text);max-width:30em;color:var(--ink-2);text-wrap:pretty;margin-top:5cqh;font-size:clamp(11px,3.1cqw,19px);line-height:1.5}.titlepage .paw{opacity:.8;width:clamp(28px,10cqw,64px);height:auto;margin-bottom:4cqh}.opener{position:absolute;top:0;bottom:0;left:0;right:0}.opener .photo{filter:saturate(.9);background-position:50%;background-size:cover;position:absolute;top:0;bottom:0;left:0;right:0}.opener .wash{background:linear-gradient(#5a3a2e14 0%,#5a3a2e8c 60%,#5a3a2ef0 100%);position:absolute;top:0;bottom:0;left:0;right:0}.opener .text{color:var(--cover-ink);position:absolute;bottom:9%;left:9%;right:9%}.opener .span{font-family:var(--sans);letter-spacing:.16em;color:#e0cfbf;font-size:clamp(9px,2.4cqw,13px)}.opener h2{font-family:var(--display);text-wrap:balance;margin:1cqh 0 0;font-size:clamp(26px,10.5cqw,76px);font-weight:400;line-height:1}.opener blockquote{font-family:var(--text);color:#f0e5d9;text-wrap:pretty;max-width:26em;margin:2.5cqh 0 0;font-size:clamp(12px,3.6cqw,22px);font-style:italic;line-height:1.4}.opener cite{font-style:normal;font-family:var(--sans);color:#d4c2b1;margin-top:1cqh;font-size:clamp(9px,2.2cqw,12px);display:block}.photos{gap:3.5cqw;padding:7% 7% 9%;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.photos.full{grid-template-rows:1fr auto}.photos.duo{grid-template-rows:1fr 1fr}.photos.trio{grid-template-rows:3fr 2fr;grid-template-columns:1fr 1fr}.photos.trio figure:first-child{grid-column:1/3}.photos.quad{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}figure{flex-direction:column;gap:1.2cqh;min-width:0;min-height:0;margin:0;display:flex}figure .img{cursor:zoom-in;flex:1;justify-content:center;align-items:center;min-height:0;display:flex}figure .img img{object-fit:contain;background:var(--paper-2);width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 2px 10px #24201c38,0 0 0 1px #24201c0d}.photos.full figure .img img{box-shadow:0 6px 24px #24201c47}figcaption{font-family:var(--text);color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(9px,2.9cqw,15px);line-height:1.3;display:-webkit-box;overflow:hidden}.photos.full figcaption{-webkit-line-clamp:4;font-size:clamp(10px,3.2cqw,17px)}.photos.full figcaption .d,figcaption .d{color:var(--ink-3);font-family:var(--sans);letter-spacing:.04em;margin-bottom:.2em;font-size:.78em;display:block}.photos.quad figcaption,.photos.trio figure:not(:first-child) figcaption{-webkit-line-clamp:1;font-size:clamp(8px,2.5cqw,13px)}.bleed{cursor:zoom-in;position:absolute;top:0;bottom:0;left:0;right:0}.bleed img{object-fit:cover;width:100%;height:100%}.bleed .cap{color:#f1e8dd;font-family:var(--text);background:linear-gradient(#0000,#140e0cc7);padding:14cqh 8% 6%;font-size:clamp(10px,3.2cqw,17px);line-height:1.35;position:absolute;bottom:0;left:0;right:0}.bleed .cap .d{font-family:var(--sans);letter-spacing:.06em;color:#cdbba8;margin-bottom:.3em;font-size:.75em;display:block}.textpage{background:var(--paper-2);flex-direction:column;justify-content:center;padding:12% 11%;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.textpage .who{font-family:var(--sans);letter-spacing:.12em;color:var(--liver);margin-bottom:2cqh;font-size:clamp(9px,2.4cqw,12px)}.textpage h3{font-family:var(--display);text-wrap:balance;margin:0 0 3cqh;font-size:clamp(20px,7cqw,44px);font-weight:400;line-height:1.05}.textpage p{font-family:var(--text);white-space:pre-line;color:var(--ink);text-wrap:pretty;margin:0;font-size:clamp(11px,3.3cqw,20px);line-height:1.5;overflow:hidden}.textpage.quote p{font-size:clamp(14px,4.6cqw,28px);font-style:italic;line-height:1.35}.sheet{z-index:20;color:var(--cover-ink);padding:calc(12px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:#0c0a0cf5;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:auto}.sheet .head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.sheet h2{font-family:var(--display);margin:0;font-size:26px;font-weight:400}.toc{flex-direction:column;width:100%;max-width:560px;margin:0 auto;display:flex}.toc button{text-align:left;border-bottom:1px solid #ffffff1f;grid-template-columns:64px 1fr auto;align-items:center;gap:14px;padding:12px 4px;display:grid}.toc button:hover{background:#ffffff0a}.toc .thumb{object-fit:cover;background:#2a262b;border-radius:2px;width:64px;height:48px}.toc .t{font-family:var(--display);font-size:18px;line-height:1.1}.toc .s{font-family:var(--sans);color:#b7aa9c;margin-top:3px;font-size:12px}.toc .pg{font-family:var(--sans);color:#b7aa9c;font-variant-numeric:tabular-nums;font-size:12px}.lightbox{z-index:30;padding:calc(10px + env(safe-area-inset-top,0px)) 12px calc(14px + env(safe-area-inset-bottom,0px));background:#080608f7;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.lightbox .img{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.lightbox .img img{object-fit:contain;max-width:100%;max-height:100%}.lightbox .cap{color:#efe6da;font-family:var(--text);white-space:pre-line;width:100%;max-width:760px;margin:0 auto;padding:12px 6px 0;font-size:15px;line-height:1.45}.lightbox .cap .d{font-family:var(--sans);letter-spacing:.08em;color:#b7aa9c;margin-bottom:4px;font-size:11px;display:block}.lightbox .close{top:calc(10px + env(safe-area-inset-top,0px));position:absolute;right:12px}.archive{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:4px;width:100%;max-width:1100px;margin:0 auto;display:grid}.archive h3{font-family:var(--display);grid-column:1/-1;margin:18px 0 6px;font-size:24px;font-weight:400}.archive button{aspect-ratio:1;background:#2a262b;overflow:hidden}.archive button img{object-fit:cover;width:100%;height:100%}.loading{height:100%;font-family:var(--display);color:#b7aa9c;justify-content:center;align-items:center;font-style:italic;display:flex}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
