@font-face{font-family:IM Fell English;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-italic-DD_ylKHZ.woff2)format("woff2"),url(/assets/im-fell-english-latin-400-italic-hN89MLGX.woff)format("woff")}@font-face{font-family:IM Fell English;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-normal-BhowGHCQ.woff2)format("woff2"),url(/assets/im-fell-english-latin-400-normal-CxhBQSzl.woff)format("woff")}@font-face{font-family:"Jersey 15";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jersey-15-latin-400-normal-C8Nlw5JP.woff2)format("woff2"),url(/assets/jersey-15-latin-400-normal-4mtCZV7-.woff)format("woff")}*,:before,:after{box-sizing:border-box}:not(dialog){margin:0}h1,h2,h3{font-weight:inherit}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0}html,body,#root{background:#0b0b14;height:100%;overflow:hidden}body{font-family:var(--ui-font-text)}:root{--ui-ink:#120a16;--ui-plum:#2b1d33;--ui-plum-dark:#1d1324;--ui-gold:#d9b46a;--ui-gold-dim:#8f7443;--ui-text:#d8cbb3;--ui-muted:#a597a8;--ui-font-display:"Jersey 15", system-ui, sans-serif;--ui-font-text:"IM Fell English", Georgia, serif;--ui-ink-ring:0 -4px var(--ui-ink), -4px 0 var(--ui-ink), 4px 0 var(--ui-ink), 0 4px var(--ui-ink), -2px -2px var(--ui-ink), 2px -2px var(--ui-ink), -2px 2px var(--ui-ink), 2px 2px var(--ui-ink)}.ui-panel{outline:2px solid var(--ui-ink);background:repeating-conic-gradient(#ffffff06 0 25%, transparent 0 50%) 0 0 / 8px 8px, var(--ui-plum);box-shadow:inset 0 0 0 1px var(--ui-ink), inset 0 0 0 3px var(--ui-plum-dark);color:var(--ui-text);isolation:isolate;border:6px solid #7a5a35;border-color:#7a5a35 #6b4a2b #4a3220 #5a3d24;font-size:1.25rem;line-height:1.5;position:relative}.ui-panel:before,.ui-panel:after{z-index:-1;content:"";position:absolute}.ui-panel:before{border:1px solid var(--ui-gold-dim);inset:4px}.ui-panel:after{--bar:linear-gradient(var(--ui-gold), var(--ui-gold));background:var(--bar) 0 0 / 11px 3px, var(--bar) 0 0 / 3px 11px, var(--bar) 100% 0 / 11px 3px, var(--bar) 100% 0 / 3px 11px, var(--bar) 0 100% / 11px 3px, var(--bar) 0 100% / 3px 11px, var(--bar) 100% 100% / 11px 3px, var(--bar) 100% 100% / 3px 11px;background-repeat:no-repeat;inset:2px}.ui-button,.ui-well{box-shadow:var(--bevel), 0 -2px var(--edge-top), -2px 0 var(--edge-left), 2px 0 var(--edge-right), 0 2px var(--edge-bottom), -1px -1px var(--edge-top), 1px -1px var(--edge-right), -1px 1px var(--edge-left), 1px 1px var(--edge-bottom), var(--ui-ink-ring);margin:4px}.ui-button{--bevel:inset 0 3px #ffe1aa2e, inset 0 -3px #0000004d;--edge-top:#9a7648;--edge-left:#8a6a42;--edge-right:#4a3018;--edge-bottom:#3e2a14;color:var(--ui-text);font-family:var(--ui-font-display);background:#5a3e24;padding:.5rem 1rem;font-size:1.75rem;line-height:1.1}.ui-button:hover:enabled{filter:brightness(1.15)}.ui-button:active:enabled{--bevel:inset 0 3px #0000004d;translate:0 2px}.ui-button:focus-visible{outline-offset:6px;outline:2px solid #fff3d0}.ui-button:disabled{opacity:.5;cursor:default}.ui-button--primary{--bevel:inset 0 3px #fff6d68c, inset 0 -3px #5c3a0a73;--edge-top:#f3e0a6;--edge-left:#e6cc8a;--edge-right:#8a6a28;--edge-bottom:#7a5c20;background:var(--ui-gold);color:#1a0f12}.ui-button--icon{width:2.5rem;height:2.5rem;padding:0;font-size:2.25rem;line-height:1}.ui-well{--bevel:inset 0 3px #0006;--edge-top:#2a1a0c;--edge-left:#2a1a0c;--edge-right:#8f6e44;--edge-bottom:#8f6e44;background:var(--ui-plum-dark)}.ui-frame{border:1px solid var(--ui-gold-dim);box-shadow:0 0 0 3px var(--ui-plum-dark), 0 0 0 4px var(--ui-ink), inset 0 0 0 3px #00000059;background:#1a1024;margin:4px}.ui-tag{border:1px solid var(--ui-gold-dim);outline:1px solid var(--ui-ink);background:var(--ui-plum-dark);padding:.25rem .75rem}.ui-tag--name{color:var(--ui-gold);font-family:var(--ui-font-display);outline-width:2px;font-size:1.5rem;line-height:1.1}.ui-ribbon{--notch:polygon(0 0, 100% 0, calc(100% - .55rem) 50%, 100% 100%, 0 100%, .55rem 50%);background:var(--ui-ink);clip-path:var(--notch);padding:2px;display:grid;position:relative}.ui-ribbon:before{background:var(--ui-gold);clip-path:var(--notch);content:"";position:absolute;inset:2px;box-shadow:inset 0 2px #fff6d68c,inset 0 -2px #5c3a0a66}.ui-ribbon>span{color:#1a0f12;min-width:0;font-family:var(--ui-font-display);font-size:var(--ribbon-size,1.5rem);text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-area:1/1;padding:.35rem .9rem .3rem;line-height:1;position:relative;overflow:hidden}.ui-divider{background:linear-gradient(90deg, transparent, var(--ui-gold-dim) 18%, var(--ui-gold-dim) 82%, transparent);border:0;height:1px}.ui-modal{background:0 0;border:none;padding:0;overflow:visible}.ui-modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b0b1499}.dialog-box{width:min(95vw,880px);position:fixed;bottom:4vh;left:50%;transform:translate(-50%)}.dialog-box__header{z-index:1;align-items:flex-end;gap:.75rem;margin-left:1rem;display:flex;position:relative}.dialog-box__portrait{flex:none;width:7rem;height:7rem;margin-bottom:-1.25rem}.dialog-box__portrait img{object-fit:cover;width:100%;height:100%}.dialog-box__speaker{margin-bottom:.75rem;font-size:2rem}.dialog-box__body{gap:1rem;display:grid}.dialog-box__text{min-height:12rem;padding:1.75rem 1.5rem;font-size:1.5rem}.dialog-box__untyped{visibility:hidden}.dialog-box__panel{flex-direction:column;justify-content:center;gap:.5rem;padding:1rem .75rem;display:flex}.dialog-box__panel--hidden{visibility:hidden}.dialog-box__option{text-wrap:balance;font-size:1.4rem}.dialog-box__reward{color:var(--ui-gold);font-family:var(--ui-font-display);text-align:center;justify-items:center;font-size:2rem;line-height:1.1;display:grid}.dialog-box__reward-icon{object-fit:contain;width:6rem;height:6rem;margin-block:-1rem}@media (width>640px){.dialog-box__body{grid-template-columns:1fr min(16rem,30%)}}@media (width<=640px){.dialog-box__portrait{width:5rem;height:5rem}}.book-page{min-height:0;color:var(--book-ink);flex-direction:column;display:flex;position:relative}.book-page--left{background:linear-gradient(90deg,#e2cfa3 0,#ecdcb6 12% 82%,#cdb486 100%)}.book-page--right{background:linear-gradient(90deg,#c7ad7d 0,#ecdcb6 16% 88%,#e2cfa3 100%)}.book-page--torn{background:linear-gradient(90deg,#b39a6c 0,#d6c193 16% 88%,#cdb486 100%)}.book-page--torn:before{--tooth:9px;inset-block:0;content:"";width:2.5rem;-webkit-mask:linear-gradient(#000 0 0) left / calc(100% - var(--tooth)) 100% no-repeat, conic-gradient(from -135deg at right, #000 90deg, #0000 0) right / var(--tooth) 16px repeat-y;mask:linear-gradient(#000 0 0) left / calc(100% - var(--tooth)) 100% no-repeat, conic-gradient(from -135deg at right, #000 90deg, #0000 0) right / var(--tooth) 16px repeat-y;background:#ecdcb6;position:absolute;left:0}.book-page__torn{max-width:20ch;color:var(--book-faded);margin-block:auto;font-size:1.3rem;font-style:italic;line-height:1.5;position:relative}.book-page:after{content:"";pointer-events:none;width:18px;position:absolute;inset-block:0}.book-page--left:after{background:linear-gradient(90deg,#0000,#3c230f40);right:0}.book-page--right:after{background:linear-gradient(270deg,#0000,#3c230f47);left:0}.book-page__content{text-align:center;flex-direction:column;flex:1;align-items:center;gap:.8rem;padding:1.5rem 1.6rem 1rem;display:flex;overflow:auto}.book-page__heading{color:var(--book-faded);letter-spacing:.12em;text-transform:uppercase;font-size:1rem}.book-page__frame{border:2px solid var(--book-ink);width:12rem;height:10rem;box-shadow:inset 0 0 0 4px #ecdcb6, inset 0 0 0 5px var(--book-faded);background:repeating-linear-gradient(45deg,#7a5a361f 0 2px,#0000 2px 7px),#e4d1a6;flex:none;padding:8px;position:relative}.book-page__image{object-fit:cover;width:100%;height:100%}.book-page__unknown{color:var(--book-faded);font-family:var(--ui-font-display);place-items:center;font-size:4rem;display:grid;position:absolute;inset:0}.book-page__name{color:var(--book-title);font-family:var(--ui-font-display);font-size:2.25rem;line-height:1}.book-page__description{max-width:24ch;color:var(--book-faded);font-size:1.25rem;font-style:italic;line-height:1.45}.book-page__stamp{border:4px solid var(--book-red);color:var(--book-red);font-family:var(--ui-font-display);opacity:.85;margin-block:auto;padding:.2rem .9rem;font-size:2rem;line-height:1;rotate:-6deg}.book-page__stamp--off{color:#86704a;border-style:dashed;border-color:#b39a72}.book-page__riddle{text-align:left;white-space:pre-line;font-size:1.3rem;line-height:1.6}.book-page__divider{flex:none;width:80%}.book-page__recipe{text-align:left;gap:.25rem;width:15rem;padding:0;list-style:none;display:grid}.book-page__recipe li{color:var(--book-title);font-family:var(--ui-font-display);border-bottom:1px dashed #b39a72;align-items:baseline;gap:.6rem;padding:.4rem .25rem;font-size:1.6rem;line-height:1;display:flex}.book-page__recipe li>span{min-width:1.6rem;color:var(--book-red);font-family:var(--ui-font-text);font-size:1.15rem}.book-page__recipe--unknown li{color:#86704a;letter-spacing:.15em}.book-page__foot{flex:none;grid-template-columns:1fr auto 1fr;align-items:center;padding:.25rem 1rem .6rem;display:grid}.book-page__number{color:var(--book-faded);font-family:var(--ui-font-display);grid-area:1/2;font-size:1.5rem}.book-page__turn{color:var(--book-title);font-family:var(--ui-font-display);border-bottom:2px solid #0000;align-items:center;gap:.35rem;padding:.3rem .5rem;font-size:1.75rem;line-height:1;display:flex}.book-page__turn--previous{grid-column:1;justify-self:start}.book-page__turn--next{grid-column:3;justify-self:end}.book-page__turn:hover:enabled,.book-page__turn:focus-visible{color:var(--book-red);border-bottom-color:currentColor}.book-page__turn:disabled{visibility:hidden}.book-page__arrow{font-size:2.5rem;translate:0 -.1rem}.book-panel__cover{--book-ink:#2a190e;--book-faded:#7a5a36;--book-title:#3b1f3f;--book-red:#9b2d20;--bar:linear-gradient(var(--ui-gold), var(--ui-gold));border:2px solid var(--ui-ink);background:radial-gradient(circle at 30% 20%,#4a2c52,#2e1834 70%);width:min(100vw - 3rem,46rem);padding:14px;position:relative;box-shadow:inset 0 0 0 2px #ffffff0f,inset 0 0 18px #0000008c}.book-panel__cover:after{background:var(--bar) 0 0 / 16px 4px, var(--bar) 0 0 / 4px 16px, var(--bar) 100% 0 / 16px 4px, var(--bar) 100% 0 / 4px 16px, var(--bar) 0 100% / 16px 4px, var(--bar) 0 100% / 4px 16px, var(--bar) 100% 100% / 16px 4px, var(--bar) 100% 100% / 4px 16px;content:"";pointer-events:none;background-repeat:no-repeat;position:absolute;inset:5px}.book-panel__close{z-index:1;position:absolute;top:-.75rem;right:-.75rem}.book-panel__spread{height:min(80vh,36rem);box-shadow:0 3px #d6c294, 0 4px #8a6f48, 0 7px #cdb88a, 0 8px #7a6040, 0 10px var(--book-ink);grid-template-columns:1fr 1fr;display:grid}@media (width<=720px){.book-panel__spread{grid-template-columns:1fr;height:auto;max-height:80vh;overflow-y:auto}}.focus-highlight{pointer-events:none;position:fixed;top:0;left:0}.focus-highlight__frame{filter:drop-shadow(2px 2px 0 var(--ui-ink));animation:.5s cubic-bezier(.2,.8,.2,1) backwards focus-highlight-contract;position:absolute;inset:0}.focus-highlight__corner{border:0 solid var(--ui-gold);width:1.75rem;height:1.75rem;position:absolute}.focus-highlight__corner--top-left{border-width:3px 0 0 3px;top:0;left:0}.focus-highlight__corner--top-right{border-width:3px 3px 0 0;top:0;right:0}.focus-highlight__corner--bottom-left{border-width:0 0 3px 3px;bottom:0;left:0}.focus-highlight__corner--bottom-right{border-width:0 3px 3px 0;bottom:0;right:0}.focus-highlight__caption{white-space:nowrap;margin-top:.6rem;animation:.3s cubic-bezier(.2,.9,.3,1) .15s backwards focus-highlight-caption-in;position:absolute;top:100%;left:50%;translate:-50%}@keyframes focus-highlight-contract{0%{opacity:0;inset:-12%}}@keyframes focus-highlight-caption-in{0%{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.focus-highlight__frame,.focus-highlight__caption{animation:none}}.ingredient-tag{white-space:nowrap;transform-origin:top;animation:.22s cubic-bezier(.34,1.56,.64,1) both ingredient-tag-pop}@keyframes ingredient-tag-pop{0%{opacity:0;transform:translateY(-6px)scale(.7)}}@media (prefers-reduced-motion:reduce){.ingredient-tag{animation:none}}.credits-panel__content{flex-direction:column;width:min(90vw,32rem);max-height:85vh;display:flex}.credits-panel__close{position:absolute;top:1rem;right:1rem}.credits-panel__scroll{text-align:center;gap:1.5rem;padding:3.5rem 2rem 2rem;display:grid;overflow:auto}.credits-panel__title{color:var(--ui-gold);font-family:var(--ui-font-display);font-size:3.5rem;line-height:1}.credits-panel__section{justify-items:center;gap:.5rem;display:grid}.credits-panel__section h3{color:var(--ui-muted);font-family:var(--ui-font-display);letter-spacing:.08em;text-transform:uppercase;font-size:1.75rem}.credits-panel__list{flex-wrap:wrap;justify-content:center;gap:.5rem;padding:0;list-style:none;display:flex}.witch-alert{pointer-events:none;position:fixed;top:0;left:0}.witch-alert__bubble{background:linear-gradient(var(--ui-ink), var(--ui-ink)) 50% .75rem / .75rem 1.9rem no-repeat, linear-gradient(var(--ui-ink), var(--ui-ink)) 50% 3rem / .75rem .75rem no-repeat, var(--ui-gold);filter:drop-shadow(0 0 1rem #d9b46ab3);width:4.5rem;height:4.5rem;animation:.35s cubic-bezier(.2,1.6,.4,1) backwards witch-alert-pop,.5s ease-in-out .35s infinite alternate witch-alert-bounce;display:block;position:relative;translate:-50% -50%}.witch-alert__bubble:before,.witch-alert__bubble:after{background:var(--ui-gold);box-shadow:0 0 0 3px var(--ui-ink);content:"";position:absolute;right:100%}.witch-alert__bubble:before{width:1rem;height:1rem;margin-right:.5rem;bottom:-.25rem}.witch-alert__bubble:after{width:.625rem;height:.625rem;margin-right:1.75rem;bottom:-1.25rem}.witch-alert__bubble--leaving{animation:.3s ease-in forwards witch-alert-leave}@keyframes witch-alert-leave{35%{scale:1.3}to{opacity:0;scale:0}}@keyframes witch-alert-pop{0%{opacity:0;scale:.3}}@keyframes witch-alert-bounce{to{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.witch-alert__bubble{animation:none}.witch-alert__bubble--leaving{visibility:hidden}}.ingredient-slots{--jar-width:12.5rem;grid-template-columns:var(--jar-width) 3rem var(--jar-width);padding:1.25rem 1.5rem .75rem;display:grid}.ingredient-slots__jar{justify-items:center;padding-bottom:.75rem;display:grid}.ingredient-slots__jar:focus-visible{outline-offset:4px;outline:2px solid #fff3d0}.ingredient-slots__well{place-items:center;width:6.5rem;height:7rem;padding-bottom:1rem;display:grid;position:relative}.ingredient-slots__icon{object-fit:contain;width:5.5rem;height:5.5rem}.ingredient-slots__well:empty:before{color:var(--ui-gold-dim);font-family:var(--ui-font-display);content:"?";font-size:3rem}.ingredient-slots__label{justify-self:stretch;margin-top:-1.6rem}.ingredient-slots__label--empty:before{box-shadow:none;background:#3b2846}.ingredient-slots__label--empty>span{color:var(--ui-muted)}.ingredient-slots__label>.ingredient-slots__remove{visibility:hidden;color:#fff1e6}.ingredient-slots__jar--removable:is(:hover,:focus-visible) .ingredient-slots__label:before{background:#b5544a;box-shadow:inset 0 2px #ffdcc866,inset 0 -2px #3c0a0a66}.ingredient-slots__jar--removable:is(:hover,:focus-visible) .ingredient-slots__name{visibility:hidden}.ingredient-slots__jar--removable:is(:hover,:focus-visible) .ingredient-slots__label>.ingredient-slots__remove{visibility:visible}.ingredient-slots__jar--removable:is(:hover,:focus-visible) .ingredient-slots__icon{opacity:.45;rotate:-8deg}.ingredient-slots__jar--removable:is(:hover,:focus-visible) .ingredient-slots__well:after{color:#f3dcd0;font-family:var(--ui-font-display);content:"×";place-items:center;padding-bottom:1rem;font-size:3.5rem;display:grid;position:absolute;inset:0}.ingredient-slots__plus{color:var(--ui-gold);font-family:var(--ui-font-display);text-align:center;align-self:start;margin-top:2.25rem;font-size:2.5rem;line-height:1}.ingredient-slots__plank{height:.75rem;box-shadow:inset 0 2px #ffe1aa33, 0 2px var(--ui-ink);background:repeating-linear-gradient(90deg,#664527 0 40px,#3b2514 40px 42px,#70502e 42px 90px,#3b2514 90px 92px);grid-column:1/-1;margin-inline:-1.5rem}.ingredient-slots>.zoom-out-button,.ingredient-slots__action{margin-top:1rem}.ingredient-slots>.zoom-out-button{grid-column:1}.ingredient-slots__action{grid-column:3}.cauldron-brew-panel{position:relative}.cauldron-brew-panel__message{--ribbon-size:2.25rem;width:max-content;margin-bottom:1.25rem;animation:.25s cubic-bezier(.34,1.56,.64,1) backwards cauldron-brew-panel-message-in;position:absolute;bottom:100%;left:50%;translate:-50%}.cauldron-brew-panel__message>span{padding-inline:2rem}@keyframes cauldron-brew-panel-message-in{0%{opacity:0;scale:.7}}@media (prefers-reduced-motion:reduce){.cauldron-brew-panel__message{animation:none}}.focus-dock{position:fixed;bottom:4vh;left:50%;transform:translate(-50%)}.loading-screen{z-index:100;background:#0b0b14;place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}.loading-screen--hidden{opacity:0;pointer-events:none}.loading-screen__panel{text-align:center;justify-items:center;gap:1.25rem;width:min(90vw,30rem);padding:2.5rem 2rem 2rem;display:grid}.loading-screen__panel>.ui-divider{width:100%}.loading-screen__title{color:var(--ui-gold);font-family:var(--ui-font-display);font-size:3.5rem;line-height:1}.loading-screen__bar{width:min(100% - 8px,18rem);height:1.75rem;position:relative}.loading-screen__bar:before,.loading-screen__bar:after{content:"";position:absolute;inset:0}.loading-screen__bar:before{background:var(--ui-gold);width:25%;animation:1s steps(6,end) infinite alternate loading-screen-walk}.loading-screen__bar:after{background:repeating-linear-gradient(90deg, transparent 0 calc(12.5% - 3px), var(--ui-plum-dark) calc(12.5% - 3px) 12.5%)}@keyframes loading-screen-walk{to{translate:300%}}@media (prefers-reduced-motion:reduce){.loading-screen__bar:before{width:100%;animation:none}}
