.book-launch{margin:0 0 22px;background:var(--indigo);border-color:var(--indigo);cursor:pointer}
.book-launch:hover{color:var(--indigo)}
.book-is-open{overflow:hidden}
.menu-book-dialog{width:min(1080px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 24px);padding:20px 24px 14px;border:1px solid #aa9164;background:#e5d4ae;color:var(--ink);overflow:auto;box-shadow:0 20px 90px #0007}
.menu-book-dialog::backdrop{background:#152720db}
.book-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}
.book-toolbar h2{font:500 19px/1.4 var(--sans);margin:0}
.book-close{border:1px solid #8c816b;background:transparent;font-size:28px;line-height:1;width:40px;height:40px;color:var(--ink);cursor:pointer}
.book-preview{font-size:12px;margin:0 0 12px;color:#554d3c}
.book-spread{position:relative;display:grid;grid-template-columns:1fr 1fr;height:clamp(440px,65dvh,620px);perspective:2000px;isolation:isolate;box-shadow:0 7px 20px #5c462d35;border-block:3px solid #b39a70;background:#fbf4e5}
.book-leaf{min-width:0;height:100%;cursor:pointer;overflow:hidden}
.book-left{background:linear-gradient(90deg,#fffaf0 92%,#e4d8c4);border-right:1px solid #baac94}
.book-right{background:linear-gradient(90deg,#eee2cd,#fffaf0 8%)}
.book-page{height:100%;position:relative;padding:25px 28px 34px;overflow:auto;font-size:13px}
.book-page>h2{font:400 28px/1.15 var(--serif);color:var(--indigo);margin:0 0 18px}
.book-brand{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--indigo)}
.book-page-number{position:absolute;bottom:10px;right:24px;color:#81745b;font-size:11px}
.book-page--cover{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#ead39e}
.book-page--cover h2{font-size:clamp(28px,3.3vw,43px);margin:16px 0 0}
.book-page--cover img{width:clamp(120px,18vw,200px);height:auto;mix-blend-mode:multiply}
.book-page--cover p{margin:0;font-size:12px}
.book-page .coffee-item{display:grid;grid-template-columns:90px minmax(0,1fr);gap:14px;border-bottom:1px solid #cfc0a6;padding:8px 0;align-items:center;margin:0}
.book-page .coffee-image{width:90px;height:90px;object-fit:cover}
.book-page .coffee-copy{padding:0;min-width:0;border:0}
.book-page .coffee-name-price{display:block}
.book-page .coffee-name-price h4{font:500 15px/1.25 var(--sans);padding:0;margin:0 0 4px}
.book-page .coffee-price{font-size:15px;text-align:left;margin:0}
.book-page .coffee-description,.book-page .coffee-serving{font-size:11px;line-height:1.4;margin:5px 0 0}
.book-page .usd-equivalent{font-size:10px;display:inline;margin-left:7px}
.book-page .coffee-variants{font-size:12px}
.book-page .coffee-extra{display:block;padding:14px;margin:15px 0}
.book-page .coffee-extra>span{display:none}
.book-source{font-size:11px;line-height:1.6;color:#635846}
.book-page--end{padding-top:38px}
.book-page--end h2{margin-top:22px}
.book-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}
.book-controls button{padding:10px 14px;min-height:44px;border:1px solid #8d7d62;background:var(--paper);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer}
.book-controls button:disabled{opacity:.35;cursor:default}
.book-status{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.book-hint{font-size:11px;margin:10px auto 0;text-align:center;color:#635846}
.book-turn{position:absolute;top:0;bottom:0;width:50%;z-index:3;transform-style:preserve-3d;pointer-events:none}
.book-turn--next{right:0;transform-origin:left center;animation:page-next .55s ease-in-out both}
.book-turn--prev{left:0;transform-origin:right center;animation:page-prev .55s ease-in-out both}
.book-face{position:absolute;inset:0;backface-visibility:hidden;background:#fffaf0;overflow:hidden;box-shadow:0 0 20px #594b3038}
.book-face--back{transform:rotateY(180deg);background:#f4ead7}
@keyframes page-next{to{transform:rotateY(-180deg)}}
@keyframes page-prev{to{transform:rotateY(180deg)}}
@media(max-width:680px){.menu-book-dialog{width:calc(100% - 16px);padding:12px 12px 10px}.book-preview{max-width:40ch;font-size:11px}.book-spread{grid-template-columns:1fr;height:clamp(420px,65dvh,600px)}.book-right{display:none}.book-turn{width:100%}.book-page{padding:20px 18px 30px}.book-page>h2{font-size:25px}.book-page .coffee-item{grid-template-columns:82px minmax(0,1fr);gap:10px}.book-page .coffee-image{width:82px;height:82px}.book-page .coffee-name-price h4{font-size:14px}.book-page .coffee-description{font-size:10px}.book-page--cover h2{font-size:34px}.book-page--cover img{width:185px}.book-controls button{font-size:12px;padding:9px}.book-hint{font-size:10px}.book-launch{width:100%}}
@media(prefers-reduced-motion:reduce){.book-turn{animation:none}}

/* Printed-menu content inside the flipbook. */
.book-page .printed-menu-item--text{grid-template-columns:minmax(0,1fr);}
.book-page .printed-menu-item .printed-price{white-space:nowrap;}
.book-page .printed-extras{font-size:10px;padding:8px;margin:8px 0;background:transparent;}
.book-page .printed-extras h5{font-size:10px;margin-bottom:5px;}
.book-page .printed-extras ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;}
.book-page .printed-extras li{font-size:9px;}
.book-subheading{font:500 12px/1.3 var(--sans);color:var(--green);margin:-10px 0 10px;}
.book-page .printed-shared-description{font-size:11px;margin:0 0 4px;}
.book-page .printed-supporting-note{font-size:9px;line-height:1.35;margin:0 0 6px;}
@media(max-width:680px){.book-page .printed-menu-item--text{grid-template-columns:minmax(0,1fr)!important;}.book-page .printed-extras ul{grid-template-columns:1fr;}}

.book-page .printed-shared-image{max-width:150px;margin:0 0 8px}
.book-page .printed-shared-image figcaption{font-size:8px;margin-top:3px}
.book-page .printed-shared-image img{width:100%;height:auto}
