@font-face{font-family:pretendard;src:url(../media/PretendardVariable-s.p.0ztvx5mb7lxp4.woff2)format("woff2");font-display:swap;font-weight:45 920}@font-face{font-family:pretendard Fallback;src:local(Arial);ascent-override:93.76%;descent-override:23.75%;line-gap-override:0.0%;size-adjust:101.55%}.pretendard_8c758b7-module__4vVJeG__className{font-family:pretendard,pretendard Fallback}.pretendard_8c758b7-module__4vVJeG__variable{--font-pretendard:"pretendard", "pretendard Fallback"}
:root{--bg:#eeece8;--surface:#fff;--sunken:#f4f3f0;--line:#ebe9e4;--line-strong:#d9d6cf;--ink:#1c1b18;--ink-2:#66635b;--ink-3:#787469;--accent:#e04b2a;--accent-press:#c23d1f;--accent-press-deep:#972d16;--accent-soft:#fdeee8;--accent-text:#bb381b;--star:#f0a500;--ok:#2f8f4e;--danger:#cf3a2e;--danger-soft:#fdeceb;--danger-text:#af3127;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--shadow-float:0 8px 28px #1c1b1829;--app-max:600px;--tabbar-h:62px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);-webkit-text-size-adjust:100%}body{font-family:var(--font-pretendard), "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", sans-serif;color:var(--ink);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.55}img,svg,video{max-width:100%;display:block}button,input,textarea,select{font:inherit;letter-spacing:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}::placeholder{color:var(--ink-3)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{max-width:var(--app-max);background:var(--surface);flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}@media (min-width:640px){.app{border-inline:1px solid var(--line)}}.app>main{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px);flex:1}.screen{padding:0 20px}.topbar{z-index:20;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);align-items:center;gap:4px;height:56px;padding:0 12px;display:flex;position:sticky;top:0}.topbar--line{border-bottom:1px solid var(--line)}.topbar-title{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;flex:1;padding:0 4px;font-size:17px;font-weight:700;overflow:hidden}.topbar-logo{letter-spacing:-.03em;flex:1;align-items:center;gap:7px;padding:0 8px;font-size:19px;font-weight:800;display:flex}.topbar-logo .logo-dot{background:var(--accent);border-radius:50%;width:9px;height:9px;margin-top:2px}.offline-badge{background:var(--sunken);color:var(--ink-2);justify-content:center;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:650;display:flex}.tabbar{z-index:30;width:100%;max-width:var(--app-max);height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@media (min-width:640px){.tabbar{border-inline:1px solid var(--line)}}.tab{color:var(--ink-3);-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;display:flex}.tab[data-active=true]{color:var(--ink)}.tab-add{justify-content:center;align-items:center;display:flex}.tab-add .tab-add-circle{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;transition:transform .12s,background .12s;display:flex;box-shadow:0 4px 14px #e04b2a59}.tab-add:active .tab-add-circle{background:var(--accent-press);transform:scale(.94)}.btn{border-radius:var(--r-md);white-space:nowrap;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:7px;height:48px;padding:0 20px;font-size:15px;font-weight:600;transition:transform .1s,background .12s,opacity .12s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;pointer-events:none}.btn--primary{background:var(--ink);color:var(--surface)}.btn--primary:active{background:#000}.btn--accent{background:var(--accent-press);color:#fff}.btn--accent:active{background:var(--accent-press-deep)}.btn--soft{background:var(--sunken);color:var(--ink)}.btn--ghost{color:var(--ink-2)}.btn--danger{background:var(--danger-soft);color:var(--danger-text)}.btn--big{border-radius:14px;width:100%;height:54px;font-size:16px}.btn--sm{border-radius:10px;height:36px;padding:0 14px;font-size:13px}.icon-btn{width:40px;height:40px;color:var(--ink);-webkit-tap-highlight-color:transparent;border-radius:12px;justify-content:center;align-items:center;transition:background .12s,transform .1s;display:inline-flex}.icon-btn:active{background:var(--sunken);transform:scale(.94)}.icon-btn--muted{color:var(--ink-2)}.input,.textarea{background:var(--sunken);border-radius:var(--r-md);border:1.5px solid #0000;width:100%;height:50px;padding:0 14px;font-size:15px;transition:border-color .12s,background .12s}.textarea{resize:vertical;height:auto;min-height:96px;padding:12px 14px;line-height:1.6}.input:focus,.textarea:focus{background:var(--surface);border-color:var(--ink);outline:none}.input--sm{border-radius:10px;height:42px;font-size:14px}.field{flex-direction:column;gap:7px;display:flex}.field-label{color:var(--ink-2);font-size:13px;font-weight:600}.form-error{color:var(--danger-text);font-size:13px}.photo-picker-add,.photo-picker-thumb{border-radius:12px;flex-shrink:0;width:64px;height:64px;position:relative;overflow:hidden}.photo-picker-add{background:var(--sunken);color:var(--ink-2);border:1.5px dashed var(--line-strong);cursor:pointer;justify-content:center;align-items:center;display:flex}.photo-picker-thumb img{object-fit:cover;cursor:pointer;width:100%;height:100%;display:block}.photo-picker-remove{color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;top:3px;right:3px}.lightbox{z-index:60;background:#0a0908d9;justify-content:center;align-items:center;padding:32px 20px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;border-radius:14px;max-width:100%;max-height:100%}.lightbox-close{z-index:61;position:absolute;top:20px;right:20px}.icon-btn--overlay{color:#fff;background:#0000008c}.search{position:relative}.search>svg{color:var(--ink-3);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search>.input{padding-left:42px}.chip-row{scrollbar-width:none;gap:8px;padding:2px 20px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line-strong);background:var(--surface);height:34px;color:var(--ink-2);-webkit-tap-highlight-color:transparent;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:0 13px;font-size:13px;font-weight:600;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.chip[data-active=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.tag{background:var(--sunken);height:24px;color:var(--ink-2);border-radius:7px;align-items:center;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.tag--accent{background:var(--accent-soft);color:var(--accent-text)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.card--sunken{background:var(--sunken);border:0}.list{flex-direction:column;display:flex}.cell{-webkit-tap-highlight-color:transparent;align-items:center;gap:14px;padding:13px 20px;transition:background .1s;display:flex}.cell:active{background:var(--sunken)}.list>.cell+.cell{border-top:1px solid var(--line)}.cell-thumb{object-fit:cover;background:var(--sunken);border-radius:14px;flex-shrink:0;width:78px;height:78px}.cell-thumb--ph{color:var(--ink-3);justify-content:center;align-items:center;display:flex}.cell-body{flex:1;min-width:0}.cell-title{letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:650;display:block;overflow:hidden}.cell-sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;display:block;overflow:hidden}.cell-meta{align-items:center;gap:6px;margin-top:6px;display:flex}.stars{color:var(--star);gap:1px;display:inline-flex}.stars--dim svg[data-empty=true]{color:var(--line-strong)}.stars-tap{gap:2px;display:inline-flex}.stars-tap button{color:var(--line-strong);padding:3px;transition:transform .1s,color .1s;display:flex}.stars-tap button[data-on=true]{color:var(--star)}.stars-tap button:active{transform:scale(1.2)}.sect{margin-top:30px}.sect-head{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.sect-title{letter-spacing:-.02em;font-size:17px;font-weight:750}.sect-title small{color:var(--ink-3);margin-left:6px;font-size:13px;font-weight:600}.sect-link{color:var(--ink-3);align-items:center;gap:2px;font-size:13px;font-weight:600;display:inline-flex}.ing{align-items:baseline;gap:10px;padding:9px 0;display:flex}.ing-name{flex-shrink:0;max-width:60%;font-weight:550}.ing-note{color:var(--ink-3);font-size:12.5px;font-weight:400;display:block}.ing-dots{border-bottom:2px dotted var(--line-strong);flex:1;min-width:16px;transform:translateY(-4px)}.ing-amt{color:var(--ink-2);flex-shrink:0;font-size:14px;font-weight:650}.ing-amt[data-scaled=true]{color:var(--accent-text)}button.ing{text-align:left;-webkit-tap-highlight-color:transparent;border-radius:8px;width:100%}button.ing:active{background:var(--sunken)}.ing-check{border:1.5px solid var(--line-strong);color:#0000;border-radius:50%;flex-shrink:0;justify-content:center;align-self:center;align-items:center;width:20px;height:20px;transition:border-color .12s,background .12s;display:inline-flex}.ing[data-checked=true] .ing-check{border-color:var(--ok);background:color-mix(in srgb, var(--ok) 14%, transparent);color:var(--ok)}.ing[data-checked=true] .ing-name,.ing[data-checked=true] .ing-amt{color:var(--ink-3);text-decoration:line-through}.step{gap:14px;padding:14px 0;display:flex}.step+.step{border-top:1px solid var(--line)}.step-num{background:var(--accent-soft);width:28px;height:28px;color:var(--accent-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:13px;font-weight:750;display:flex}button.step-num{-webkit-tap-highlight-color:transparent;transition:background .12s,color .12s}.step[data-checked=true] .step-num{background:color-mix(in srgb, var(--ok) 14%, transparent);color:var(--ok)}.step[data-checked=true] .step-body{opacity:.45}.step-body{flex:1;min-width:0}.step-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.step-title{letter-spacing:-.015em;font-size:15px;font-weight:650}.step-ts{background:var(--sunken);font-variant-numeric:tabular-nums;height:24px;color:var(--ink-2);border-radius:7px;flex-shrink:0;align-items:center;gap:4px;padding:0 9px;font-size:12px;font-weight:650;transition:background .12s,color .12s;display:inline-flex}.step-ts:active{background:var(--accent-soft);color:var(--accent-text)}.timer-chip{background:var(--accent-soft);height:22px;color:var(--accent-text);font-variant-numeric:tabular-nums;vertical-align:-3px;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:3px;margin:0 1px;padding:0 8px;font-size:12.5px;font-weight:700;transition:background .12s,transform .1s;display:inline-flex}.timer-chip:active{transform:scale(.95)}.timer-chip[data-done=true]{background:var(--ok);color:#fff;animation:.9s ease-in-out infinite timer-pulse}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.6}}.timer-banner-stack{z-index:15;flex-direction:column;gap:6px;padding:8px 20px 0;display:flex;position:sticky;top:56px}.timer-banner{background:var(--ok);color:#fff;border-radius:12px;align-items:center;gap:10px;padding:11px 14px;font-size:13.5px;font-weight:650;display:flex;box-shadow:0 6px 18px #2f8f4e59}.timer-banner .icon-btn{color:#fff}.timer-banner .icon-btn:active{background:#fff3}.step-desc{color:var(--ink-2);white-space:pre-line;margin-top:4px;font-size:14.5px;line-height:1.65}.step-tip{background:var(--accent-soft);color:color-mix(in srgb, var(--accent) 82%, var(--ink));border-radius:10px;gap:7px;margin-top:9px;padding:9px 12px;font-size:13px;line-height:1.55;display:flex}.step-tip svg{flex-shrink:0;margin-top:2px}.dim{z-index:40;background:#14120f73;animation:.18s dim-in;position:fixed;inset:0}.sheet{z-index:50;width:100%;max-width:var(--app-max);background:var(--surface);padding:10px 20px calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:.22s cubic-bezier(.32,.72,.2,1) sheet-up;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.sheet-grab{background:var(--line-strong);border-radius:2px;width:38px;height:4px;margin:2px auto 14px}.sheet-title{letter-spacing:-.02em;margin-bottom:16px;font-size:17px;font-weight:750}@keyframes sheet-up{0%{opacity:.6;transform:translate(-50%,24%)}to{opacity:1;transform:translate(-50%)}}@keyframes dim-in{0%{opacity:0}to{opacity:1}}.progress{background:var(--sunken);border-radius:999px;height:6px;overflow:hidden}.progress>i{border-radius:inherit;background:var(--accent);height:100%;transition:width .45s;display:block}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{border-radius:var(--r-md);background:linear-gradient(90deg, var(--sunken) 25%, #edece8 50%, var(--sunken) 75%);background-size:200% 100%;animation:1.6s linear infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:56px 24px;display:flex}.empty-icon{background:var(--sunken);width:64px;height:64px;color:var(--ink-3);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-title{letter-spacing:-.02em;font-size:16px;font-weight:700}.empty-desc{color:var(--ink-3);white-space:pre-line;font-size:13.5px;line-height:1.6}.notice{border-radius:var(--r-md);background:var(--sunken);color:var(--ink-2);gap:9px;padding:12px 14px;font-size:13.5px;line-height:1.55;display:flex}.notice--danger{background:var(--danger-soft);color:var(--danger-text)}.notice svg{flex-shrink:0;margin-top:2px}.save-lead{letter-spacing:-.03em;font-size:24px;font-weight:800;line-height:1.3}.hero{aspect-ratio:16/9;background:var(--sunken);display:block;position:relative;overflow:hidden}.hero img{object-fit:cover;width:100%;height:100%}.hero-play{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#12100eb8;border-radius:999px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:12.5px;font-weight:650;display:inline-flex;position:absolute;bottom:12px;right:12px}.recipe-title{letter-spacing:-.03em;word-break:keep-all;font-size:23px;font-weight:800;line-height:1.3}.meta-line{color:var(--ink-3);margin-top:6px;font-size:13.5px}.cta-bar{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:25;width:100%;max-width:var(--app-max);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);flex-direction:column;gap:8px;padding:12px 20px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.has-cta-bar{padding-bottom:96px}.checkrow{color:var(--ink-3);align-items:center;gap:11px;padding:8px 0;font-size:14.5px;font-weight:550;display:flex}.checkrow[data-state=done],.checkrow[data-state=active]{color:var(--ink)}.checkrow-dot{border:1.5px solid var(--line-strong);width:24px;height:24px;color:var(--ink-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.checkrow[data-state=done] .checkrow-dot{border-color:var(--ok);background:color-mix(in srgb, var(--ok) 12%, transparent);color:var(--ok)}.checkrow[data-state=active] .checkrow-dot{border-color:var(--accent);color:var(--accent-text)}.select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a3a096' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:38px}.muted{color:var(--ink-3)}.hairline-t{border-top:1px solid var(--line)}.row{align-items:center;gap:8px;display:flex}.grow{flex:1;min-width:0}@media print{.topbar,.tabbar,.cta-bar,.hero,.icon-btn,.chip,.btn,.sect-link,.timer-chip,.step-ts,.ing-check{display:none!important}.app{border:none;max-width:100%}.screen{padding:0 12px}.step{break-inside:avoid}textarea{resize:none;background:0 0;border:none;padding:0}}
