@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Inter:wght@300;400;500;600&family=Inter+Tight:wght@300;400;500;600&display=swap";html,body,#root{margin:0;width:100%;min-height:100%;font-family:Inter Tight,Inter,sans-serif;font-size:16px}html{scrollbar-gutter:stable}#root{display:flex;justify-content:center}*,*:before,*:after{box-sizing:border-box}body{min-width:320px;overflow-y:scroll}button,input,select,textarea{font:inherit}.screen-transition{animation:screen-enter .24s cubic-bezier(.22,1,.36,1)}.toast-enter{animation:toast-enter .22s cubic-bezier(.22,1,.36,1)}.import-spinner{width:20px;height:20px;border:2px solid var(--muted-6);border-top-color:var(--text);border-radius:50%;display:inline-block;animation:import-spin .9s linear infinite}.tab-icon-shell{position:relative;display:inline-grid;place-items:center;width:24px;height:24px}.tab-icon-layer{grid-area:1 / 1;transition:opacity .18s ease,transform .18s cubic-bezier(.22,1,.36,1);transform-origin:center}.tab-icon-line{opacity:1;transform:translateY(0) scale(1)}.tab-icon-fill{opacity:0;transform:translateY(4px) scale(.72)}.tab-icon-shell.is-active .tab-icon-line{opacity:0;transform:translateY(-4px) scale(.78)}.tab-icon-shell.is-active .tab-icon-fill{opacity:1;transform:translateY(0) scale(1)}.cook-step-enter-next{animation:cook-step-enter-next .26s cubic-bezier(.22,1,.36,1)}.cook-step-enter-prev{animation:cook-step-enter-prev .26s cubic-bezier(.22,1,.36,1)}@keyframes screen-enter{0%{opacity:0}to{opacity:1}}@keyframes cook-step-enter-next{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@keyframes cook-step-enter-prev{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}@keyframes toast-enter{0%{opacity:0;transform:translate(-50%,12px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes import-spin{to{transform:rotate(360deg)}}@keyframes recipe-item-enter{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.recipe-item-enter{animation:recipe-item-enter .38s cubic-bezier(.22,1,.36,1)}.pill-btn,.pill-btn-secondary{appearance:none;-webkit-appearance:none;width:100%;height:57px;margin:0;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:none;color:var(--text);font-family:Inter Tight,Inter,sans-serif;font-size:17px;font-weight:500;line-height:1;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:background-color .18s ease}.pill-btn{background:var(--recipe-add-bg)}.pill-btn-secondary{background:var(--pill-secondary-bg);color:var(--pill-secondary-text)}.pill-btn:disabled,.pill-btn-secondary:disabled{cursor:default}@media(hover:hover)and (pointer:fine){.pill-btn:not(:disabled):hover{background-color:var(--recipe-add-hover)}.pill-btn:not(:disabled):active{background-color:var(--recipe-add-active)}.pill-btn-secondary:not(:disabled):hover{background-color:var(--pill-secondary-hover)!important;box-shadow:none!important}.pill-btn-secondary:not(:disabled):active{background-color:var(--pill-secondary-active)!important;box-shadow:none!important}}@media(prefers-reduced-motion:reduce){.screen-transition,.toast-enter,.import-spinner,.cook-step-enter-next,.cook-step-enter-prev,.tab-icon-layer,.recipe-item-enter{animation:none!important;transition:none!important}}@media(hover:hover)and (pointer:fine){[style*="cursor: pointer"]:not(.list-row-hover):not(.recipe-tile-hover):not(.primary-action-btn):not(.round-icon-btn):not(.tab-hover-btn):not(.recipe-action-btn):not(.floating-plus),a[href]{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}[style*="cursor: pointer"]:not(.list-row-hover):not(.recipe-tile-hover):not(.primary-action-btn):not(.round-icon-btn):not(.tab-hover-btn):not(.recipe-action-btn):not(.floating-plus):hover,a[href]:hover{box-shadow:inset 0 0 0 9999px var(--hover-overlay)}[style*="cursor: pointer"]:not(.list-row-hover):not(.recipe-tile-hover):not(.primary-action-btn):not(.round-icon-btn):not(.tab-hover-btn):not(.recipe-action-btn):not(.floating-plus):active,a[href]:active{box-shadow:inset 0 0 0 9999px var(--press-overlay)}button:disabled,[style*="cursor: not-allowed"]{box-shadow:none!important}.list-row-hover{position:relative;z-index:0}.list-row-hover:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--page-x-pad, 18px));right:calc(-1 * var(--page-x-pad, 18px));background:transparent;transition:background-color .18s ease;pointer-events:none;z-index:-1}.list-row-hover[data-selected=true]:before{background:var(--surface-alt)}.list-row-hover:hover:before{background:var(--hover-overlay)}.list-row-hover:active:before{background:var(--press-overlay)}.list-row-hover[data-selected=true]:hover:before,.list-row-hover[data-selected=true]:active:before{background:var(--surface-alt)}.filter-sheet-row[data-selected=true]:before{background:var(--hover-overlay)}.filter-sheet-row[data-selected=true]:hover:before{background:var(--hover-overlay)}.filter-sheet-row[data-selected=true]:active:before{background:var(--press-overlay)}.primary-action-btn{transition:background-color .18s ease,color .18s ease}.primary-action-btn:hover{background:var(--primary-btn-hover)!important}.primary-action-btn:active{background:var(--primary-btn-active)!important}.primary-action-btn:disabled:hover,.primary-action-btn:disabled:active{background:var(--text)!important}.round-icon-btn:hover{background-color:var(--surface-hover)!important}.round-icon-btn:active{background-color:var(--surface-alt)!important}.quick-filter-pill:hover{background-color:var(--surface-hover)!important}.quick-filter-pill:active{background-color:var(--surface-alt)!important}.modal-filter-pill:hover{background-color:var(--surface-hover)!important}.modal-filter-pill:active{background-color:var(--surface-alt)!important}.tab-hover-btn:hover{background-color:var(--surface-hover)!important}.tab-hover-btn:active{background-color:var(--surface-alt)!important}.recipe-tile-hover:hover{background:var(--surface-hover)!important}.recipe-tile-hover:active{background:var(--surface-alt)!important}.floating-plus{transition:background-color .18s ease}.floating-plus:hover{background-color:var(--surface-hover)!important}.floating-plus:active{background-color:var(--surface-alt)!important}.recipe-action-btn:hover{background-color:var(--surface-hover)!important}.recipe-action-btn:active{background-color:var(--surface-alt)!important}.recipe-add-btn:hover{background-color:var(--recipe-add-hover)!important}.recipe-add-btn:active{background-color:var(--recipe-add-active)!important}}.loader-stage{--screen-inset: 32px;--content-gap: 32px;--result-top-inset: 24px;--result-bottom-space: 176px;--segment-idle: #d6d6d8;--segment-active: #111111;--status-bg: #ffffff;--status-border: #161616;--status-text: #111111;--score-muted: #b8b8bc;--canvas-stroke: 17, 17, 17;--phone-bg: #ffffff;--text: #111111}.loader-stage[data-theme=dark]{--segment-idle: rgba(255, 255, 255, .06);--segment-active: #555555;--status-bg: #242424;--status-border: #242424;--status-text: #f0f0f0;--score-muted: #888888;--canvas-stroke: 134, 134, 134;--phone-bg: #1a1a1a;--text: #f0f0f0}.loader-stage{position:absolute;inset:0;overflow:hidden;background:var(--phone-bg);color:var(--text);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*{box-sizing:border-box}.phone-scene{position:absolute;inset:0;z-index:1}.phone-ui{position:absolute;inset:0;z-index:3;pointer-events:none}.result-drag-handle{width:64px;height:6px;border-radius:24px;background:var(--segment-idle);margin:16px auto 0;flex-shrink:0}.result-overlay{--result-art-size: 200px;--result-art-scale: 1;position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;min-height:0;background:var(--phone-bg);opacity:0;pointer-events:none;overflow:hidden;transition:opacity .22s ease}.result-overlay.is-visible{opacity:1;pointer-events:auto}.result-art-shell{position:relative;width:var(--result-art-size);height:var(--result-art-size);transform:scale(var(--result-art-scale));transform-origin:center}.result-art{width:100%;height:100%}.result-art.is-hidden,.result-placeholder.is-hidden{display:none}.result-placeholder{width:var(--result-art-size);height:var(--result-art-size);display:grid;place-items:center;border-radius:999px;background:radial-gradient(circle at 30% 25%,#fffffff0,#ffffff4d 38%,#fff0 62%),linear-gradient(180deg,#f3e6c6,#e2c88f);box-shadow:inset 0 1px #ffffffb8,0 18px 42px #00000024}.result-placeholder__badge{width:calc(var(--result-art-size) * .54);height:calc(var(--result-art-size) * .54);border-radius:calc(var(--result-art-size) * .18);display:grid;place-items:center;background:#ffffffeb;box-shadow:0 16px 28px #81611f2e;color:#111;font-size:calc(var(--result-art-size) * .27)}.result-sheet{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.result-copy{position:absolute;inset:0;min-height:0;padding:var(--result-top-inset) var(--screen-inset) calc(var(--result-bottom-space) + var(--screen-inset))}.result-copy__art{display:grid;place-items:center;height:100%;min-height:0;max-height:none;width:100%}.result-bottom{position:absolute;left:var(--screen-inset);right:var(--screen-inset);bottom:var(--screen-inset);display:grid;gap:var(--content-gap)}.result-bottom-top{display:grid;gap:var(--content-gap);justify-items:center;text-align:center}.copy-top h2,.result-title{margin:0;font-family:"Instrument Serif",serif;font-size:44px;font-weight:400;line-height:46px;letter-spacing:0;text-align:center;max-width:311px}.result-title{color:var(--text);text-wrap:balance;justify-self:center}.result-actions{width:100%}canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.scene-layer{position:absolute;inset:0}.scene-layer.is-hidden{opacity:0;pointer-events:none}.lottie-stage{display:grid;place-items:center;background:var(--phone-bg);transition:opacity .22s ease}.lottie-shell{width:100%;height:100%;display:grid;place-items:center;padding-bottom:176px;box-sizing:border-box}.lottie-art{width:min(46%,180px);max-width:180px;aspect-ratio:1}.copy{position:absolute;left:var(--screen-inset);right:var(--screen-inset);bottom:calc(57px + var(--screen-inset) + var(--content-gap));z-index:4;display:grid;gap:var(--content-gap);pointer-events:none}.loader-hide-btn{position:absolute;left:var(--screen-inset);right:var(--screen-inset);bottom:var(--screen-inset);z-index:9}@media(hover:hover)and (pointer:fine){.loader-hide-btn .pill-btn-secondary:hover{background-color:var(--pill-secondary-hover)!important}.loader-hide-btn .pill-btn-secondary:active{background-color:var(--pill-secondary-active)!important}}.copy-top{display:grid;gap:var(--content-gap);justify-items:center;text-align:center;pointer-events:none}.copy-heading{display:flex;flex-direction:column;align-items:center;justify-items:center;width:100%}.copy-top h2{font-synthesis:none;color:var(--text)}.score-subtitle{margin:0 0 16px;color:var(--score-muted);font-family:Inter,system-ui,sans-serif;font-size:15px;line-height:1.2;font-weight:400;letter-spacing:0;display:inline-flex;align-items:center;justify-content:center;max-height:18px;overflow:hidden;opacity:1;transform:translateZ(0);transition:max-height .28s cubic-bezier(.22,.7,.2,1),margin-bottom .28s cubic-bezier(.22,.7,.2,1),opacity .26s ease,transform .28s cubic-bezier(.22,.7,.2,1)}.score-subtitle-value{font-variant-numeric:tabular-nums;display:inline-block;will-change:transform}.score-subtitle-value.bump-up{animation:score-value-bump-up .46s cubic-bezier(.22,.7,.2,1)}.score-subtitle-value.bump-down{animation:score-value-bump-down .46s cubic-bezier(.22,.7,.2,1)}@keyframes score-value-bump-up{0%{transform:translate3d(0,6px,0)}35%{transform:translate3d(0,-4px,0)}to{transform:translateZ(0)}}@keyframes score-value-bump-down{0%{transform:translate3d(0,-6px,0)}35%{transform:translate3d(0,4px,0)}to{transform:translateZ(0)}}.score-subtitle.hidden{max-height:0;margin-bottom:0;opacity:0;transform:translate3d(0,6px,0);pointer-events:none}.progress{display:flex;gap:8px;justify-content:center;width:140px;margin:0 auto}.progress-segment{width:41.333px;height:4px;border-radius:24px;background:var(--segment-idle);opacity:1;transition:background-color .18s ease,opacity .18s ease}.progress-segment.done{background:var(--segment-active)}.progress-segment.active{background:var(--segment-active);animation:stageBlink .92s ease-in-out infinite}.progress-segment.idle{background:var(--segment-idle);opacity:.92}@keyframes stageBlink{0%,to{opacity:.3}50%{opacity:1}}@media(max-width:374px){.loader-stage{--screen-inset: 20px;--content-gap: 24px}.result-copy{padding-top:16px}}
