#book-scene{position:fixed;inset:0;z-index:100;perspective:2800px;perspective-origin:30% 50%}#book-cover{position:absolute;inset:0;background-color:#cc3a4c;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.06) 3px,rgba(0,0,0,.06) 4px),repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(0,0,0,.04) 3px,rgba(0,0,0,.04) 4px);cursor:pointer;transform-origin:0% 50%;transition:transform 1.7s cubic-bezier(.42,0,.14,1),opacity .5s ease 1.15s;display:flex;flex-direction:column;padding:28px 28px 44px;box-shadow:inset 12px 0 28px -8px #0000008c,inset -2px 0 6px #00000026,6px 0 40px #00000073,12px 4px 60px #0000004d}#book-cover:focus-visible{outline:3px solid #c9a456;outline-offset:-8px}#book-cover.is-open{transform:rotateY(-172deg);opacity:0;pointer-events:none}#book-cover.closing{transition:transform 1.25s cubic-bezier(.42,0,.14,1),opacity .25s ease}#book-cover:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,transparent 40%,rgba(40,20,10,.28) 100%),#b48c461a;pointer-events:none;z-index:5}.cover-spine{position:absolute;left:0;top:0;bottom:0;width:18px;background:linear-gradient(to right,rgba(0,0,0,.35) 0%,rgba(0,0,0,.15) 60%,transparent 100%);pointer-events:none}.cover-border-outer{flex:1;border:8px solid #4e7828;padding:8px;display:flex;flex-direction:column;min-height:0}.cover-border-inner{flex:1;border:2px solid #4e7828;display:flex;flex-direction:column;overflow:hidden;min-height:0}.cover-painting-section{flex:1;padding:16px;background:#cc3a4c;min-height:0}.cover-mat{width:100%;height:100%;background:#ede4cc;padding:14px;box-shadow:inset 0 2px 10px #0000002e,inset 0 -1px 4px #00000014}.cover-art{width:100%;height:100%;position:relative;overflow:hidden;background:#1a2e14}.cover-art img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}.cover-signature-strip{padding:14px 22px 18px;background:#cc3a4c;border-top:1px solid rgba(201,164,86,.4);text-align:right;flex-shrink:0}.cover-sig-rule{width:48px;height:1px;background:#c9a456;margin-left:auto;margin-bottom:10px}.cover-title-script{font-family:"DM Serif Display",Georgia,serif;font-style:italic;font-size:clamp(1.6rem,4.5vw,3rem);color:#f0e6cc;line-height:1.05;letter-spacing:-.01em;margin-bottom:5px}.cover-subtitle-script{font-family:EB Garamond,Georgia,serif;font-style:italic;font-size:clamp(.65rem,1.4vw,.825rem);color:#c9a456;letter-spacing:.07em}.cover-open-cta{position:absolute;bottom:15px;left:50%;transform:translate(-50%);white-space:nowrap;display:flex;align-items:center;gap:7px;color:#c9a456cc;animation:cover-breathe 3s ease-in-out infinite}.cover-open-label{font-family:DM Sans,sans-serif;font-weight:500;font-size:.6rem;text-transform:uppercase;letter-spacing:.24em}.cover-open-arrow{font-size:.75rem;animation:cover-bob 2.2s ease-in-out infinite;display:inline-block}@keyframes cover-breathe{0%,to{opacity:.55}50%{opacity:1}}@keyframes cover-bob{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}#ring-holes{position:fixed;left:0;top:0;bottom:0;width:52px;z-index:20;background:#dfd7c5;border-right:1px solid #c4b898;display:flex;flex-direction:column;align-items:center;justify-content:space-around;padding:120px 0;pointer-events:none;opacity:0;transform:translate(-52px);transition:opacity .7s ease .5s,transform .7s cubic-bezier(.4,0,.2,1) .5s}body.book-is-open #ring-holes{opacity:1;transform:translate(0)}@media(max-width:768px){#ring-holes{display:none}}.ring-hole{width:27px;height:27px;border-radius:50%;background:linear-gradient(145deg,#e8e0d0,#f5f0e8);border:1.5px solid #b8a882;box-shadow:inset 0 2px 5px #0000002e,inset 0 -1px 2px #fff6,0 1px 3px #0000001f}#book-interior{transition:padding-left .7s cubic-bezier(.4,0,.2,1) .5s}body.book-is-open #book-interior{padding-left:52px}@media(max-width:768px){body.book-is-open #book-interior{padding-left:0}}body.book-is-open{background-image:repeating-linear-gradient(to bottom,transparent,transparent 31px,rgba(180,160,120,.13) 31px,rgba(180,160,120,.13) 32px)}body.book-is-open #recipes{background-image:repeating-linear-gradient(to bottom,transparent,transparent 31px,rgba(150,125,80,.28) 31px,rgba(150,125,80,.28) 32px)}.recipe-card{position:relative;background:#f8f4e8;box-shadow:1px 2px 5px #0000001c,4px 8px 24px #0000001a;transition:transform .25s ease,box-shadow .25s ease}.card-body{padding:14px 18px 20px}.recipe-card--1{transform:rotate(.4deg)}.recipe-card--2{transform:rotate(-.5deg)}.recipe-card--3{transform:rotate(.6deg)}.recipe-card--4{transform:rotate(-.3deg)}.recipe-card--5{transform:rotate(.5deg)}.recipe-card:hover{transform:rotate(0) translateY(-5px)!important;box-shadow:2px 6px 14px #00000024,6px 16px 40px #00000021;z-index:2}body.book-is-open #book-interior:before{content:"";position:fixed;left:52px;top:0;bottom:0;width:1px;background:#8a1e2238;z-index:19;pointer-events:none}@media(max-width:768px){body.book-is-open #book-interior:before{display:none}}.pill{border:1px solid var(--color-line);border-radius:999px;padding:.4rem .95rem;font-size:var(--text-small);background:var(--color-paper);color:var(--color-ink);transition:color .15s ease,border-color .15s ease,background .15s ease}.pill:hover{border-color:var(--color-burgundy);color:var(--color-burgundy)}.pill.is-active{background:var(--color-burgundy);border-color:var(--color-burgundy);color:var(--color-paper)}#filter-toolbar.is-stuck{padding:.7rem 1rem;box-shadow:0 10px 30px #1e140a14}#filter-toolbar.is-stuck .filter-rows{display:none}#filter-toolbar.is-stuck.expanded .filter-rows{display:block;padding-top:1rem}#filter-toolbar.is-stuck #toggle-filters{display:inline-block}#filter-toolbar.is-stuck #active-chips.has-chips{display:flex}.chip{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.25rem .8rem;font-size:var(--text-small);background:var(--color-burgundy);color:var(--color-paper);cursor:pointer}.chip:hover{background:var(--color-ink)}.chip .x{font-size:.85em;opacity:.8}.author-btn.is-active .avatar{border-color:var(--color-burgundy);box-shadow:0 0 0 2px var(--color-burgundy)}.author-btn.is-active p{color:var(--color-burgundy)}
