@import "https://fonts.googleapis.com/css2?family=Archivo:wght@600;700&family=Cormorant+Garamond:wght@300;400;500&family=Hanken+Grotesk:wght@400;500;600&display=swap";
:root,:root[data-theme=light]{--ease:cubic-bezier(.22,.7,.28,1);--paper:#f2eee2;--field:#fdfbf4;--field2:#eae4d4;--ink:#2a2620;--ink2:#57503f;--muted:#6e6553;--faint:#7c7360;--line:#d9d0b8;--line-soft:#e9e3d3;--kraft:#b4442e;--kraft-soft:#8e3623;--tape:#dfcdb0;--lift:0 2px 0 #ede6d2, 0 12px 26px #5a4b281a;--lift-sm:0 6px 16px #5a4b2814;--ok:#3f6b4a;--warn:#9a6b1f;--tooth-blend:multiply;--tooth-alpha:.42;--art-alpha:.15;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--paper:#16130f;--field:#241f19;--field2:#2e2921;--ink:#f7f3e8;--ink2:#cec5b2;--muted:#a79c87;--faint:#8e8574;--line:#3a342a;--line-soft:#2b2620;--kraft:#c99a4e;--kraft-soft:#e0bc7c;--tape:#8a6a38;--lift:0 2px 0 #0000002e, 0 14px 30px #00000073;--lift-sm:0 6px 16px #0000004d;--ok:#8fbf9c;--warn:#e0bc7c;--tooth-blend:screen;--tooth-alpha:.085;--art-alpha:.085;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Hanken Grotesk,system-ui,-apple-system,sans-serif;line-height:1.6;overflow-x:hidden}button,input,select,textarea{color:inherit;font-family:inherit;font-size:16px}a{color:inherit}img{max-width:100%}.g{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;line-height:1.1}.hv{letter-spacing:-.012em;font-family:Archivo,system-ui,sans-serif;font-weight:700}#tooth{z-index:0;pointer-events:none;opacity:var(--tooth-alpha);mix-blend-mode:var(--tooth-blend);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");position:fixed;inset:0}.sketch{z-index:0;pointer-events:none;opacity:var(--art-alpha);color:var(--kraft);position:fixed}.sketch svg{width:100%;height:auto;display:block}.sk1{width:190px;top:11vh;right:-42px;transform:rotate(-8deg)}.sk2{width:210px;bottom:14vh;left:-46px;transform:rotate(7deg)}@media (max-width:700px){.sk1{width:126px;right:-50px}.sk2{width:136px;left:-52px}}.wrap{z-index:1;max-width:940px;margin:0 auto;padding:0 22px 132px;position:relative}@media (min-width:760px){.wrap{padding:0 44px 150px}}header.top{z-index:3;position:relative}header.top .inner{max-width:940px;padding:calc(20px + env(safe-area-inset-top,0px)) 22px 0;align-items:center;gap:10px;margin:0 auto;display:flex}@media (min-width:760px){header.top .inner{padding:26px 44px 0}}.brand{letter-spacing:.1em;text-transform:uppercase;flex:1;align-items:center;min-height:44px;font-family:Archivo,sans-serif;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.brand em{letter-spacing:.16em;margin-left:.4em;font-family:Cormorant Garamond,Georgia,serif;font-style:normal;font-weight:300}.brand .mark{color:var(--kraft);flex:none;margin-right:9px}.opener{padding:56px 0 0;position:relative}@media (max-width:700px){.opener{padding:34px 0 0}}h1.room{text-transform:uppercase;margin:0;font-size:clamp(31px,7.8vw,52px);line-height:1.02}h1.room .a{letter-spacing:-.014em;word-spacing:.14em;color:var(--ink);font-family:Archivo,sans-serif;font-weight:700;display:block}h1.room .b{letter-spacing:.045em;word-spacing:.06em;color:var(--ink2);font-family:Cormorant Garamond,Georgia,serif;font-weight:300;display:block}.kick{letter-spacing:.26em;text-transform:uppercase;color:var(--kraft);margin-bottom:16px;font-size:9.5px;font-weight:600}.lede{color:var(--ink2);max-width:54ch;margin:22px 0 0;font-size:15.5px;line-height:1.65}.opener .rule{background:var(--ink);transform-origin:0;height:1px;animation:draw .8s var(--ease) both .1s;margin:26px 0 0}@keyframes draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.opener.hasPhoto{background-position:50% 42%;background-repeat:no-repeat;background-size:cover;margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}@media (min-width:760px){.opener.hasPhoto{margin-left:-44px;margin-right:-44px;padding-left:44px;padding-right:44px}}.opener.hasPhoto .rule{background:var(--kraft)}:root[data-theme=light] .opener.hasPhoto{padding-top:206px;padding-bottom:4px}:root[data-theme=light] .opener.hasPhoto:before{content:"";z-index:0;background-image:var(--hero);background-position:50% 46%;background-size:cover;height:180px;position:absolute;top:0;left:0;right:0}:root[data-theme=light] .opener.hasPhoto>*{z-index:1;position:relative}:root[data-theme=dark] .opener.hasPhoto{text-shadow:0 1px 18px #0a08058c;background-image:linear-gradient(to top, #16130f 10%, #16130ff4 48%, #16130f6b 74%, #16130f94 100%), var(--hero);padding-top:212px;padding-bottom:26px}@media (max-width:520px){:root[data-theme=light] .opener.hasPhoto{padding-top:182px}:root[data-theme=light] .opener.hasPhoto:before{height:158px}:root[data-theme=dark] .opener.hasPhoto{padding-top:184px}}h2.sec{letter-spacing:.26em;text-transform:uppercase;color:var(--muted);align-items:center;gap:14px;margin:50px 0 16px;font-size:9.5px;font-weight:500;display:flex}h2.sec:after{content:"";background:var(--line);flex:1;height:1px}.card{background:var(--field);border:1px solid var(--line);box-shadow:var(--lift);border-radius:0;padding:22px;position:relative}.card+.card{margin-top:12px}.grid{gap:12px;display:grid}@media (min-width:700px){.grid.g2{grid-template-columns:1fr 1fr}}.btn{border:1px solid var(--line);background:var(--field);color:var(--ink);cursor:pointer;min-height:44px;transition:background .15s var(--ease), transform .15s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background:var(--field2)}.btn.acc:hover:not(:disabled){background:var(--kraft-soft);border-color:var(--kraft-soft)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.acc{background:var(--kraft);border-color:var(--kraft);color:#fff9ef}:root[data-theme=dark] .btn.acc{color:#1a1610}.btn.ghost{background:0 0}.btn.wide{width:100%}.btn.sm{min-height:38px;padding:7px 15px;font-size:12.5px}.chip{border:1px solid var(--line);background:var(--field);cursor:pointer;min-height:38px;color:inherit;border-radius:999px;align-items:center;gap:6px;padding:8px 15px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.chip[aria-pressed=true]{background:var(--kraft);border-color:var(--kraft);color:#fff9ef}:root[data-theme=dark] .chip[aria-pressed=true]{color:#1a1610}.chip[aria-pressed=true]:hover{background:var(--kraft-soft);border-color:var(--kraft-soft)}.chips{flex-wrap:wrap;gap:8px;display:flex}.field{background:var(--field);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:0;min-height:46px;padding:11px 13px;font-size:16px}.field:focus-visible,.btn:focus-visible,.chip:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--kraft);outline-offset:2px}textarea.field{resize:vertical;min-height:120px;line-height:1.5}label.lbl{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 7px;font-size:9.5px;font-weight:600;display:block}.muted{color:var(--muted)}.small{font-size:13.5px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.divider{background:var(--line-soft);border:0;height:1px;margin:22px 0}.badge{letter-spacing:.16em;text-transform:uppercase;background:var(--field2);color:var(--ink2);padding:4px 9px;font-size:9.5px;font-weight:600;display:inline-block}.badge.warn{background:color-mix(in srgb, var(--warn) 18%, transparent);color:var(--warn)}.badge.ok{background:color-mix(in srgb, var(--ok) 18%, transparent);color:var(--ok)}.notice{border-left:3px solid var(--kraft);background:var(--field2);padding:13px 15px;font-size:14px}.notice.warn{border-left-color:var(--warn)}.spinner{border:2px solid var(--line);border-top-color:var(--kraft);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.answer{white-space:pre-wrap;font-size:15px;line-height:1.65}.foot{border-top:1px solid var(--ink);color:var(--muted);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:6px 26px;margin-top:70px;padding-top:13px;font-size:9.5px;display:flex}nav.tabs{z-index:30;background:var(--field);border-top:1px solid var(--line);padding:4px 2px calc(4px + env(safe-area-inset-bottom,0px));grid-template-columns:repeat(6,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}nav.tabs a{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;border-top:2px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:50px;padding:9px 2px;font-size:9px;font-weight:600;text-decoration:none;display:flex}nav.tabs a[aria-current=page]{color:var(--kraft);border-top-color:var(--kraft)}nav.tabs svg{width:19px;height:19px}.plates{grid-template-columns:1fr;gap:22px 14px;display:grid}@media (min-width:560px){.plates{grid-template-columns:1fr 1fr}}@media (min-width:900px){.plates{grid-template-columns:1fr 1fr 1fr}}.plate{background:var(--field);border:1px solid var(--line);box-shadow:var(--lift-sm);color:inherit;flex-direction:column;padding:0 0 16px;text-decoration:none;display:flex;position:relative}.plate:before{content:"";background:var(--tape);opacity:.85;z-index:2;width:64px;height:18px;position:absolute;top:-9px}.plate:nth-child(odd):before{left:16px;transform:rotate(-4deg)}.plate:nth-child(2n):before{right:16px;transform:rotate(3.5deg)}.plate .shot{aspect-ratio:4/3;background:var(--field2) center/cover no-repeat;margin:0;display:block}.plate .body{flex-direction:column;flex:1;gap:5px;padding:14px 16px 0;display:flex}.plate h3{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:23px;font-weight:500;line-height:1.12}.plate .macroline{letter-spacing:.04em;color:var(--ink2);flex-wrap:wrap;align-items:baseline;gap:9px;margin-top:2px;font-size:11.5px;display:flex}.plate .macroline b{color:var(--kraft);font-weight:700}.plate .meta{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:10px;font-size:9.5px;display:flex}.plate:not(:has(.shot)) .body{border-left:3px solid var(--kraft);padding-top:26px}.index{border-top:1px solid var(--ink)}.index .row-item{border-bottom:1px solid var(--line-soft);color:inherit;align-items:baseline;gap:14px;padding:15px 2px;text-decoration:none;display:flex}.index .row-item:hover{background:var(--field2)}.index .n{color:var(--kraft);letter-spacing:.04em;min-width:30px;font-family:Archivo,sans-serif;font-size:11px;font-weight:700}.index .t{flex:1}.index .t b{font-family:Cormorant Garamond,Georgia,serif;font-size:21px;font-weight:500}.index .t small{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px;font-size:9.5px;display:block}.worksheet{border-top:1px solid var(--ink);padding-top:4px}.worksheet .fieldset{border-bottom:1px dotted var(--line);padding:18px 0}.worksheet .fieldset .num{letter-spacing:.2em;color:var(--kraft);margin-bottom:9px;font-family:Archivo,sans-serif;font-size:10px;font-weight:700;display:block}.worksheet .field{border:0;border-bottom:1px dotted var(--line);background:0 0;padding-left:0}.worksheet textarea.field{border:1px dotted var(--line);background:var(--field);padding:10px 12px}.ledger{--pitch:38px;background-image:repeating-linear-gradient(to bottom, transparent 0 calc(var(--pitch) * 2 - 1px), var(--line-soft) calc(var(--pitch) * 2 - 1px) calc(var(--pitch) * 2));background-position:0 0}.ledger .figures{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:0;display:grid}.ledger .fig{height:calc(var(--pitch) * 2);flex-direction:column;justify-content:center;padding-right:14px;display:flex}.ledger .fig .v{color:var(--kraft);letter-spacing:-.02em;font-family:Archivo,sans-serif;font-size:34px;font-weight:700;line-height:1}.ledger .fig .k{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:9px}.pad{border-top:2px solid var(--ink)}.pad .aisle{letter-spacing:.26em;text-transform:uppercase;color:var(--kraft);border-bottom:1px solid var(--line);padding:20px 0 8px;font-size:9.5px;font-weight:600}.pad .tick{border-bottom:1px dotted var(--line);align-items:center;gap:13px;min-height:48px;padding:12px 2px;display:flex}.pad .tick input[type=checkbox]{width:21px;height:21px;accent-color:var(--kraft);flex:none;margin:0}.pad .tick .what{flex:1}.pad .tick.done .what{opacity:.5;text-decoration:line-through}.timetable{border-top:2px solid var(--ink)}.timetable .day{border-bottom:1px solid var(--line);padding:0 0 8px}.timetable .day .d{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);padding:16px 0 8px;font-size:9.5px;font-weight:600}.timetable .day.today .d{color:var(--kraft)}.timetable .slot{border-top:1px dotted var(--line);align-items:baseline;gap:12px;padding:8px 0;display:flex}.timetable .slot .s{letter-spacing:.16em;text-transform:uppercase;color:var(--faint);min-width:72px;font-size:9px}.timetable .slot .v{flex:1;font-size:15px}.recipecard{border:1px solid var(--ink);background:var(--field);box-shadow:var(--lift)}.recipecard .band{aspect-ratio:16/9;background:var(--field2) center/cover no-repeat;display:block}.recipecard .inner{padding:22px}.hairline{border-collapse:collapse;width:100%}.hairline td,.hairline th{border-bottom:1px solid var(--line-soft);text-align:left;padding:10px 0;font-weight:400}.hairline tr:last-child td{border-bottom:0}.hairline td.n{text-align:right;white-space:nowrap;font-weight:600}.cookstep{font-size:clamp(21px,5.2vw,31px);font-weight:400;line-height:1.42}.cooktitle{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;font-family:Archivo,sans-serif;font-size:12px;font-weight:700}.cookbar{z-index:30;background:var(--field);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));align-items:center;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.save-heading:focus{outline:none}.save-progress{gap:12px;margin:0 0 24px;padding:0;list-style:none;display:flex}.save-progress li{background:var(--field2);color:var(--muted);flex:1;padding:10px 12px;font-size:14px}.save-progress [aria-current=step]{background:var(--ink);color:var(--paper);font-weight:600}.save-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.save-method{cursor:pointer;background:var(--field);text-align:left;box-shadow:var(--lift-sm);border:2px solid #0000;padding:16px}.save-method[aria-pressed=true]{border-color:var(--kraft);background:var(--field2)}.save-method span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.save-method:focus-visible,.save-sources summary:focus-visible{outline:2px solid var(--kraft);outline-offset:3px}.save-storage{margin:18px 0 24px}.save-sources summary{cursor:pointer;min-height:28px;font-weight:600}.review-fields{border:0;min-width:0;margin:0;padding:0}.review-fields[hidden]{display:none}.recipe-preview h3{margin:24px 0 12px;font-size:28px}.recipe-preview li{overflow-wrap:anywhere;margin-bottom:12px}.save-collections{border:0;min-width:0;margin:0;padding:0}.save-collections legend{font-family:Cormorant Garamond,Georgia,serif;font-size:28px}.save-action{bottom:calc(86px + env(safe-area-inset-bottom));background:var(--field);z-index:5;padding:12px 0;position:sticky}.save-success h2{margin:12px 0;font-size:38px}@media (max-width:420px){.save-method{padding:13px 10px}.save-method b{font-size:15px}.save-progress{gap:6px}}.save-sources summary{min-height:44px;padding:10px 0}@media (max-width:520px){:root[data-theme=light] .save-heading .opener.hasPhoto,:root[data-theme=dark] .save-heading .opener.hasPhoto{padding-top:116px}:root[data-theme=light] .save-heading .opener.hasPhoto:before{height:96px}.save-heading .opener .rule{margin-top:16px}}
