@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.270md_-rr62el.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0lsanbtneewqp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_ae92e279-module___wC0Mq__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_ae92e279-module___wC0Mq__variable{--font-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/65c558afe41e89d6-s.013x9cty0dvbp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/14e23f9b59180572-s.054a9rxhye2rx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/b49b0d9b851e4899-s.12c_00cnxx2oq.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/2a65768255d6b625-s.p.2r-cuu_7locvx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Fallback;src:local(Times New Roman);ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.0%;size-adjust:111.26%}.playfair_display_bc435d80-module__vQzrIq__className{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.playfair_display_bc435d80-module__vQzrIq__variable{--font-serif:"Playfair Display", "Playfair Display Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b12e986493c137cf-s.2tuvx2ggl0uf7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/36363bfb06833f56-s.p.048ctm9k7u_u3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2fa3ef4ca165ab4-s.2t3qiyt2vl-ta.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a73419dd2ba2d841-s.p.2_s53-223o24o.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.dm_mono_1a268523-module__YdnL8W__className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.dm_mono_1a268523-module__YdnL8W__variable{--font-mono:"DM Mono", "DM Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--paper:#f8f5ef;--paper-deep:#f1ebe1;--paper-shade:#e7dfd2;--card:#fffdf9;--ink:#202a24;--ink-soft:#5e685f;--ink-faint:#687168;--line:#ddd5c7;--line-soft:#eee8de;--saffron:#bd4824;--saffron-deep:#8f3218;--saffron-soft:#e1774e;--sage:#66806a;--sage-deep:#405b46;--mustard:var(--saffron);--amber-ink:var(--saffron-deep);--espresso:#202a24;--espresso-up:#2b3730;--cream:#f8f5ef;--cream-soft:#c9c3b8;--focus:#1f6f8b;--radius-xl:26px;--radius:18px;--radius-sm:11px;--radius-pill:999px;--shadow-card:0 8px 22px #202a2412;--shadow-lift:0 22px 48px #202a2429;--shadow-deep:0 30px 70px #202a243d;--ease:cubic-bezier(.22, .68, .15, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--font-body:var(--font-sans), "DM Sans", system-ui, sans-serif;--font-display:var(--font-serif), "Playfair Display", Georgia, serif;--font-label:var(--font-mono), "DM Mono", ui-monospace, monospace}html{scroll-behavior:smooth}*,:before,:after{box-sizing:border-box}body{background-color:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E"),radial-gradient(1100px 460px at 8% -12%,#d8a63c33,#0000 70%),radial-gradient(900px 420px at 96% -6%,#d4571f1f,#0000 68%);background-repeat:repeat,no-repeat,no-repeat;background-attachment:fixed;margin:0;font-size:15px;line-height:1.55;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-weight:600;line-height:1.04}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}::selection{background:#d4571f38}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:5px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{--rail:244px;grid-template-columns:var(--rail) minmax(0, 1fr);min-height:100vh;display:grid;position:relative}.shell:before{content:"";width:var(--rail);background-color:var(--espresso);background-image:linear-gradient(#ffffff0d,#0000 22%),radial-gradient(320px 200px at 20% 60px,#d4571f2e,#0000 70%);position:absolute;inset:0 auto 0 0}.sidebar{z-index:1;height:100vh;color:var(--cream);flex-direction:column;gap:30px;padding:28px 16px 20px;display:flex;position:sticky;top:0}.brand{color:var(--cream);letter-spacing:-.05em;align-items:center;gap:10px;padding-left:8px;font-size:24px;font-weight:700;display:inline-flex}.brand b{color:var(--saffron-soft)}.mark{align-items:flex-end;gap:2px;height:26px;display:flex}.mark i{background:var(--sage);transform-origin:bottom;width:6px;transition:transform .4s var(--ease-out);border-radius:4px 4px 1px 1px;display:block}.mark i:first-child{height:13px;transform:rotate(-16deg)}.mark i:nth-child(2){background:var(--saffron-soft);height:24px}.mark i:nth-child(3){height:17px;transform:rotate(17deg)}.brand:hover .mark i:first-child{transform:rotate(-26deg)}.brand:hover .mark i:nth-child(3){transform:rotate(27deg)}.nav{gap:2px;display:grid}.nav__link{border-radius:var(--radius-sm);color:var(--cream-soft);transition:background .25s var(--ease), color .25s var(--ease);align-items:center;gap:12px;padding:11px 12px;font-size:14px;display:flex;position:relative}.nav__link:before{content:"";background:var(--saffron-soft);width:3px;height:0;transition:height .3s var(--ease-out);border-radius:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav__link:hover{color:var(--cream);background:#ffffff0f}.nav__link--active{color:#fff8ea;background:#ffffff17;font-weight:500}.nav__link--active:before{height:20px}.nav__icon{width:18px;color:var(--sage);transition:color .25s var(--ease);place-items:center;display:grid}.nav__link--active .nav__icon{color:var(--saffron-soft)}.nav__link b{border-radius:var(--radius-pill);color:var(--cream-soft);font-family:var(--font-label);background:#ffffff14;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:400}.sidebar__bottom{gap:12px;margin-top:auto;display:grid}.sidebar__card{border-radius:var(--radius-sm);background:#ffffff0d;border:1px solid #ffffff1a;gap:8px;padding:12px;display:grid}.sidebar .eyebrow{color:var(--cream-soft)}.shelf{gap:10px;padding:0 12px;display:grid}.shelf__list{gap:1px;display:grid}.shelf__list a{color:var(--cream-soft);transition:color .2s var(--ease);grid-template-columns:17px minmax(0,1fr);align-items:baseline;gap:9px;padding:6px 0;font-size:12.5px;display:grid}.shelf__list a:hover{color:var(--cream)}.shelf__list b{color:#b9ac99bf;font-family:var(--font-label);font-size:10px;font-weight:400}.shelf__list li:first-child a{color:var(--cream)}.shelf__list li:first-child b{color:var(--saffron-soft)}.shelf__list span{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.shelf__more{color:#b9ac99e0;text-underline-offset:3px;font-size:10px;text-decoration:underline}.basket{border-radius:var(--radius-sm);transition:background .25s var(--ease), transform .25s var(--ease);background:#ffffff0d;border:1px solid #ffffff1a;gap:8px;padding:12px 13px;display:grid}.basket:hover{background:#ffffff17;transform:translateY(-2px)}.basket__head{color:var(--cream);justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;display:flex}.basket__head b{color:var(--saffron-soft);font-family:var(--font-label);font-size:11px;font-weight:400}.basket .progress__bar{background:#ffffff24;height:4px}.basket small{color:#b9ac99e0;font-size:10px}.sidebar__note{color:#b9ac99e0;padding:0 4px;font-size:10px;line-height:1.6}.shell__main{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;height:72px;padding:0 clamp(20px,4vw,54px);display:flex}.topbar__date{min-width:0;color:var(--ink-soft);align-items:center;font-size:12px;display:flex}.topbar__date span{color:var(--mustard);flex:none;margin-right:7px}.topbar__date-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar__search{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--ink-soft);transition:border-color .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);flex:none;align-items:center;gap:9px;padding:8px 13px;font-size:12px;display:inline-flex}.topbar__search svg{color:var(--sage)}.topbar__search:hover{border-color:var(--sage);box-shadow:var(--shadow-card);color:var(--ink)}kbd{border:1px solid var(--line);color:var(--ink-faint);font-family:var(--font-label);border-radius:5px;padding:2px 5px;font-size:9px}.page{width:100%;max-width:1180px;margin-inline:auto;padding:30px clamp(20px,4vw,54px) 60px}.credit{border-top:1px solid var(--line);color:var(--ink-soft);flex-wrap:wrap;gap:4px 14px;margin-top:auto;padding:18px clamp(20px,4vw,54px) 26px;font-size:10px;display:flex}.credit a{text-underline-offset:3px;text-decoration:underline}.credit__links{flex-wrap:wrap;gap:12px;display:flex}.credit__links a{text-decoration-color:#746c6073}.credit__links a:hover{color:var(--saffron-deep)}.toast{z-index:40;border-radius:var(--radius-sm);background:var(--espresso);max-width:340px;box-shadow:var(--shadow-deep);color:var(--cream);opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out);align-items:center;gap:10px;padding:12px 16px 12px 14px;font-size:12px;display:flex;position:fixed;bottom:22px;right:24px;transform:translateY(16px)scale(.98)}.toast:before{content:"";background:var(--saffron-soft);border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 4px #ea8b4538}.toast--visible{opacity:1;transform:translateY(0)scale(1)}.eyebrow{color:var(--sage-deep);font-family:var(--font-label);letter-spacing:.06em;align-items:center;gap:9px;font-size:10px;font-weight:500;display:inline-flex}.eyebrow:before{content:"";opacity:.55;background:currentColor;width:15px;height:1px}.eyebrow--light{color:#f6edddc7}.board{animation:rise .55s var(--ease-out) both;gap:36px;display:grid}.board__head{justify-content:space-between;align-items:flex-end;gap:26px;display:flex}.board__head h1{letter-spacing:-.04em;margin-top:10px;font-size:clamp(40px,5.4vw,62px)}.board__head h1 em{color:var(--saffron);padding-right:.06em;font-style:italic;font-weight:500}.board__lede{max-width:50ch;color:var(--ink-soft);margin-top:14px;font-size:14px}.board__head-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.board__section{gap:18px;display:grid}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.section-head h2{margin-top:7px;font-size:27px}.section-head__note{color:var(--ink-faint);font-family:var(--font-label);font-size:11px}.button{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--ink);transition:transform .22s var(--ease), box-shadow .22s var(--ease), background .22s var(--ease), border-color .22s var(--ease);align-items:center;gap:7px;padding:11px 17px;font-size:13px;font-weight:500;display:inline-flex}.button span{transition:transform .22s var(--ease-out)}.button:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.button:hover span{transform:translate(3px)}.button:active{transform:translateY(0)scale(.985)}.button:disabled{cursor:not-allowed;opacity:.45;transform:none}.button--solid{background:var(--espresso);color:var(--cream);border-color:#0000}.button--solid:hover{background:var(--espresso-up)}.button--saffron{background:linear-gradient(135deg, var(--saffron-soft), var(--saffron));color:#fff8f0;border-color:#0000;box-shadow:0 8px 20px #d4571f42}.button--saffron:hover{box-shadow:0 14px 26px #d4571f52}.button--ghost{color:var(--cream);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border-color:#ffffff57}.button--ghost:hover{background:#fff3}.text-link{color:var(--sage-deep);text-underline-offset:4px;transition:color .18s var(--ease), text-decoration-color .18s var(--ease);background:0 0;border:0;padding:0;font-size:12px;-webkit-text-decoration:underline #6b8a6361;text-decoration:underline #6b8a6361}.text-link:hover{color:var(--saffron-deep);text-decoration-color:#d4571f80}.text-link--quiet{color:var(--ink-faint)}.text-link--light{color:#f6eddde0;text-decoration-color:#f6eddd66}.text-link--light:hover{color:#fff;text-decoration-color:#ffffffb3}.chip{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--ink-soft);transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);padding:7px 13px;font-size:12px}.chip:hover{border-color:var(--sage);color:var(--ink);transform:translateY(-1px)}.chip--on{background:var(--espresso);color:var(--cream);border-color:#0000}.chip--link small{color:var(--ink-faint);font-family:var(--font-label);font-size:10px}.pill-button{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--ink-soft);white-space:nowrap;transition:transform .18s var(--ease), border-color .18s var(--ease), color .18s var(--ease), background .18s var(--ease);padding:6px 12px;font-size:11px}.pill-button:hover{border-color:var(--saffron);color:var(--saffron-deep);transform:translateY(-1px)}.pill-button:active{transform:scale(.96)}.pill-button--solid{background:var(--saffron);color:#fff8f0;border-color:#0000}.pill-button--solid:hover{background:var(--saffron-deep);color:#fff8f0}.pill-button--tiny{padding:3px 9px;font-size:10px}.tiny-button{color:var(--sage-deep);transition:background .16s var(--ease);background:#6b8a6324;border:0;border-radius:7px;padding:3px 8px;font-size:10px}.tiny-button:hover{background:#6b8a6342}.segmented{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--paper-deep);padding:3px;display:inline-flex}.segmented__button{border-radius:var(--radius-pill);color:var(--ink-soft);transition:background .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);background:0 0;border:0;padding:7px 15px;font-size:12px}.segmented__button:hover{color:var(--ink)}.segmented__button--on{background:var(--card);color:var(--ink);font-weight:500;box-shadow:0 2px 8px #503a201f}.segmented--small .segmented__button{padding:5px 11px;font-size:11px}.switch{color:var(--ink-soft);cursor:pointer;align-items:center;gap:8px;font-size:11px;display:inline-flex}.switch input{border-radius:var(--radius-pill);background:var(--paper-shade);width:32px;height:18px;box-shadow:inset 0 0 0 1px var(--line);appearance:none;cursor:pointer;transition:background .25s var(--ease);margin:0;position:relative}.switch input:after{content:"";background:var(--card);width:14px;height:14px;transition:transform .25s var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #3c2d194d}.switch input:checked{background:var(--sage)}.switch input:checked:after{transform:translate(14px)}.stepper{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);align-items:center;gap:2px;padding:3px;display:inline-flex}.stepper button{width:27px;height:27px;color:var(--ink-soft);transition:background .16s var(--ease), color .16s var(--ease);background:0 0;border:0;border-radius:50%;font-size:15px;line-height:1}.stepper button:hover:not(:disabled){background:var(--paper-deep);color:var(--ink)}.stepper button:disabled{cursor:not-allowed;opacity:.35}.stepper span{font-family:var(--font-label);padding:0 7px;font-size:12px}.stepper small{color:var(--ink-faint);font-size:10px}.stepper--light{color:var(--cream);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border-color:#ffffff4d}.stepper--light button{color:var(--cream)}.stepper--light button:hover:not(:disabled){color:#fff;background:#fff3}.stepper--light small{color:#f6edddb3}.opening{color:var(--ink-faint);font-family:var(--font-label);justify-items:center;gap:16px;padding:110px 0;font-size:12px;display:grid}.empty{border:1px dashed var(--line);border-radius:var(--radius-xl);text-align:center;background:#ffffff7a;justify-items:center;gap:14px;padding:58px 24px 66px;display:grid}.empty h1,.empty h2{font-size:32px}.empty p{max-width:48ch;color:var(--ink-soft);font-size:13px}.empty--inline{padding:36px 20px 40px}.empty__art{align-items:flex-end;gap:7px;height:60px;display:flex}.empty__art i{width:17px;animation:bob 3.4s var(--ease) infinite;border-radius:6px 6px 3px 3px;display:block}.empty__art i:first-child{background:linear-gradient(180deg, var(--sage), var(--sage-deep));height:34px}.empty__art i:nth-child(2){background:linear-gradient(180deg, var(--saffron-soft), var(--saffron));height:52px;animation-delay:.25s}.empty__art i:nth-child(3){background:linear-gradient(180deg, #e6c46a, var(--mustard));height:42px;animation-delay:.5s}.empty__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:8px;display:flex}.empty-note{color:var(--ink-faint);font-size:12px}.form-error{color:var(--saffron-deep);font-size:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:18px;display:grid}.grid__item{gap:9px;display:grid}.grid__item-tools{flex-wrap:wrap;align-items:center;gap:12px;padding:0 6px;display:flex}.photo{background:linear-gradient(140deg, var(--paper-shade), #e2d5bd);position:relative;overflow:hidden}.photo__image{object-fit:cover;transition:transform .8s var(--ease-out)}.photo--empty{color:#d4571f6b;place-items:center;font-size:26px;display:grid}.photo--review{aspect-ratio:1;border-radius:var(--radius-sm);width:100%}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);transition:transform .35s var(--ease-out), box-shadow .35s var(--ease-out), border-color .35s var(--ease);flex-direction:column;padding:9px 9px 4px;display:flex}.card:hover{box-shadow:var(--shadow-lift);transform:translateY(-6px)}.card:hover .photo__image{transform:scale(1.06)}.card--planned{border-color:#6b8a638c}.card--ghost{min-height:320px;box-shadow:none;background:#fff6;border-style:dashed;animation:1.5s ease-in-out infinite pulse}.card__frame{border-radius:13px;position:relative;overflow:hidden}.card__photo{display:block}.card__photo .photo{aspect-ratio:4/3}.card__frame:after{content:"";pointer-events:none;background:linear-gradient(#0000,#241f1942);height:40%;position:absolute;inset:auto 0 0}.card__badge,.card__flag{z-index:1;border-radius:var(--radius-pill);font-family:var(--font-label);letter-spacing:.05em;padding:4px 10px;font-size:9px;position:absolute}.card__badge{color:var(--saffron-deep);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffdf8eb;top:9px;left:9px}.card__flag{color:#f4f9f1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#45603feb;bottom:9px;left:9px}.card__save{z-index:2;width:34px;height:34px;color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .22s var(--ease), color .22s var(--ease), transform .22s var(--ease-out);background:#fffdf8e0;border:0;border-radius:50%;place-items:center;font-size:17px;line-height:1;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 4px 12px #281c1038}.card__save:hover{background:var(--saffron);color:#fff8f0;transform:scale(1.1)rotate(90deg)}.card__save--on{background:var(--sage-deep);color:#f4f9f1}.card__save--on:hover{background:var(--sage-deep);transform:scale(1.1)}.card__body{gap:6px;padding:14px 7px 12px;display:grid}.card__kicker{color:var(--amber-ink);font-family:var(--font-label);letter-spacing:.07em;text-transform:uppercase;font-size:9px}.card__title{font-size:20px;line-height:1.1}.card__title a{background-image:linear-gradient(var(--saffron), var(--saffron));transition:background-size .35s var(--ease-out);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px}.card:hover .card__title a{background-size:100% 1px}.card__facts{color:var(--ink-faint);font-size:11px}.card__match{color:var(--sage-deep);font-family:var(--font-label);font-size:10px}.card__open{border-top:1px solid var(--line-soft);color:var(--sage-deep);justify-content:space-between;align-items:center;margin-top:auto;padding:11px 7px 10px;font-size:12px;display:flex}.card__open span{transition:transform .25s var(--ease-out)}.card:hover .card__open{color:var(--saffron-deep)}.card:hover .card__open span{transform:translate(4px)}.hero,.recipe__hero{border-radius:var(--radius-xl);background-color:var(--espresso);min-height:430px;box-shadow:var(--shadow-lift);color:var(--cream);background-image:radial-gradient(560px 340px at 6% 4%,#d4571f4d,#0000 72%),radial-gradient(420px 300px at 40% 100%,#d8a63c29,#0000 70%);grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);display:grid;position:relative;overflow:hidden}.hero__panel{align-content:end;gap:0;padding:34px;display:grid}.hero__media{min-height:320px;position:relative}.hero__photo{background:0 0;position:absolute;inset:0}.hero:hover .photo__image,.recipe__hero:hover .photo__image{transform:scale(1.04)}.hero__scrim{background:linear-gradient(90deg, var(--espresso) 0%, #221d179e 22%, #221d1714 58%, transparent 100%);position:absolute;inset:0}.hero__stamp{border-radius:var(--radius-pill);color:#fff6ec;font-family:var(--font-label);letter-spacing:.07em;background:#d4571fe0;border:1px solid #ffffff38;justify-self:start;align-items:center;gap:8px;padding:6px 13px 6px 11px;font-size:10px;display:inline-flex}.hero__stamp i{width:6px;height:6px;animation:blink 2.4s var(--ease) infinite;background:#fff6ec;border-radius:50%}.hero h2{letter-spacing:-.035em;text-shadow:0 2px 24px #140f0a73;margin:16px 0 12px;font-size:clamp(34px,4.6vw,56px)}.hero__facts{color:#f6edddd1;font-size:13px}.hero__actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;display:flex}.hero__glance{border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff24;margin-top:24px;padding:15px 17px}.hero__glance ul{columns:160px 2;column-gap:22px}.hero__glance-title{color:#f6edddb3;font-family:var(--font-label);letter-spacing:.08em;border-bottom:1px solid #ffffff24;margin-bottom:10px;padding-bottom:9px;font-size:10px}.hero__glance li{grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:9px;padding:4px 0;font-size:12px;display:grid}.hero__glance i{border-radius:50%;width:7px;height:7px}.hero__glance span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero__glance b{color:#f6edddc2;font-family:var(--font-label);font-size:11px;font-weight:400}.hero__glance-more{color:var(--saffron-soft);text-underline-offset:3px;margin-top:10px;font-size:11px;text-decoration:underline;display:inline-block}.stats{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.stat{border-right:1px solid var(--line-soft);gap:3px;padding:18px 22px;display:grid}.stat:last-child{border-right:0}.stat strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:32px;font-weight:600}.stat span{color:var(--ink-faint);font-size:11px}.market-peek{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff8c;gap:16px;padding:22px 24px 24px;display:grid}.peek-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:0 26px;display:grid}.peek-list li{border-bottom:1px solid var(--line-soft);grid-template-columns:8px minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:8px 0;font-size:13px;display:grid}.peek-list i{border-radius:50%;width:7px;height:7px;transform:translateY(-2px)}.peek-list b{color:var(--ink-soft);font-family:var(--font-label);font-size:11px;font-weight:400}.peek-list small{color:var(--ink-faint);grid-column:2/-1;font-size:10px}.search{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);gap:16px;padding:24px;display:grid}.search__field{border:1px solid var(--line);background:var(--paper);height:56px;transition:border-color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);border-radius:15px;align-items:center;gap:11px;padding:0 16px;display:flex}.search__field:focus-within{border-color:var(--sage);background:var(--card);box-shadow:0 8px 24px #45603f24}.search__icon{width:20px;height:20px;color:var(--sage);flex:none}.search__field input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:15px}.search__field input::placeholder{color:var(--ink-faint)}.search__clear{color:var(--ink-faint);text-underline-offset:3px;background:0 0;border:0;font-size:11px;text-decoration:underline}.search__quick{color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:9px;font-size:11px;display:flex}.search__quick button{color:var(--sage-deep);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:11px;text-decoration:underline}.search__quick button:hover{color:var(--saffron-deep)}.filters{border-top:1px solid var(--line-soft);gap:14px;padding-top:14px;display:grid}.filters__chips{flex-wrap:wrap;gap:7px;display:flex}.filters__selects{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.filters__selects label{color:var(--ink-faint);font-family:var(--font-label);letter-spacing:.06em;align-items:center;gap:8px;font-size:10px;display:inline-flex}.filters__selects select{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);font-family:var(--font-body);letter-spacing:normal;padding:8px 11px;font-size:12px}.search__count{color:var(--ink-soft);font-size:12px}.importer{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(600px 200px at 90% 120%, #d8a63c2e, transparent 70%), linear-gradient(150deg, #f8f1e2, var(--card));box-shadow:var(--shadow-card);gap:18px;padding:24px;display:grid}.importer__intro{align-items:flex-start;gap:15px;display:flex}.importer__mark{background:linear-gradient(140deg, #e9c976, var(--mustard));color:#6b551f;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:19px;display:grid}.importer__intro h2{margin:8px 0 7px;font-size:26px}.importer__intro p{max-width:60ch;color:var(--ink-soft);font-size:12px}.importer__form{flex-wrap:wrap;gap:11px;display:flex}.importer__form label{flex:320px}.importer__form input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);width:100%;transition:border-color .22s var(--ease), box-shadow .22s var(--ease);outline:none;padding:13px 15px;font-size:13px}.importer__form input:focus{border-color:var(--sage);box-shadow:0 6px 18px #45603f1f}.review{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);animation:rise .4s var(--ease-out) both;grid-template-columns:210px minmax(0,1fr);gap:22px;padding:20px;display:grid}.review__body{align-content:start;gap:9px;display:grid}.review__body h3{font-size:25px}.review__facts{color:var(--ink-soft);font-size:12px}.review__ingredients{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:0 22px;margin-top:6px;display:grid}.review__ingredients li{border-bottom:1px solid var(--line-soft);justify-content:space-between;gap:10px;padding:6px 0;font-size:12px;display:flex}.review__ingredients b{color:var(--ink-soft);font-family:var(--font-label);white-space:nowrap;font-size:11px;font-weight:400}.review__more{color:var(--ink-faint);font-size:11px}.review__actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:10px;display:flex}.dial{flex:none;width:54px;height:54px;position:relative}.dial svg{width:100%;height:100%;transform:rotate(-90deg)}.dial__track{fill:none;stroke:var(--paper-shade);stroke-width:4px}.dial__value{fill:none;stroke:var(--sage);stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset .6s var(--ease-out)}.dial span{color:var(--ink-soft);font-family:var(--font-label);place-items:center;font-size:11px;display:grid;position:absolute;inset:0}.progress{gap:9px;display:grid}.progress__bar{border-radius:var(--radius-pill);background:var(--paper-shade);height:7px;overflow:hidden}.progress__bar i{border-radius:inherit;background:linear-gradient(90deg, var(--sage), var(--mustard));height:100%;transition:width .5s var(--ease-out);display:block}.progress p{color:var(--ink-soft);font-size:12px}.market-controls{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.market-controls__toggles{flex-wrap:wrap;gap:20px;display:flex}.market{columns:300px 3;column-gap:18px}.market--by-recipe{columns:340px 3}.market--flat{columns:auto}.market--flat .market-lines{columns:250px 3;column-gap:28px}.market--flat .market-line{break-inside:avoid}.market-group{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);break-inside:avoid;animation:rise .45s var(--ease-out) both;margin-bottom:18px;padding:17px 19px 11px}.market-group__head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:9px;display:flex}.market-group__head h2{min-width:0;font-family:var(--font-label);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:500;display:flex}.market--by-recipe .market-group__head h2{font-family:var(--font-display);letter-spacing:-.02em;text-transform:none;font-size:17px}.market-group__head i{border-radius:50%;flex:none;width:8px;height:8px}.market-group__head span{white-space:nowrap;align-items:center;gap:10px;display:inline-flex}.market-line input:focus-visible+.market-line__box,.step input:focus-visible+.step__number{outline:2px solid var(--focus);outline-offset:3px}.market-group__head small{color:var(--ink-faint);font-size:10px}.market-line label{border-bottom:1px solid var(--line-soft);cursor:pointer;grid-template-columns:18px minmax(0,1fr) auto;align-items:baseline;gap:11px;padding:10px 0;display:grid}.market-line input{opacity:0;pointer-events:none;position:absolute}.market-line__box{color:#0000;width:17px;height:17px;transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);border:1px solid #c8ccc2;border-radius:6px;place-items:center;font-size:10px;display:grid;transform:translateY(2px)}.market-line label:hover .market-line__box{border-color:var(--sage);background:#6b8a631a}.market-line__name{gap:2px;font-size:13px;display:grid}.market-line__name small{color:var(--ink-faint);font-size:10px}.market-line__name em{color:var(--ink-faint);font-size:10px;font-style:normal}.market-line__amount{color:var(--ink-soft);font-family:var(--font-label);text-align:right;white-space:nowrap;font-size:11px;font-weight:400}.market-line--picked .market-line__box{border-color:var(--sage-deep);background:var(--sage-deep);color:#f6faf3;animation:pop .28s var(--ease-out)}.market-line--picked .market-line__name,.market-line--picked .market-line__amount{color:var(--ink-faint);text-decoration:line-through}.market-from{gap:11px;display:grid}.market-from__chips{flex-wrap:wrap;gap:8px;display:flex}.recipe{animation:rise .55s var(--ease-out) both;gap:24px;display:grid}.recipe__back{margin-bottom:-8px}.recipe__hero{min-height:390px}.recipe__hero .hero__panel{align-content:center}.recipe__hero h1{letter-spacing:-.038em;text-shadow:0 2px 26px #120d0880;margin:14px 0 10px;font-size:clamp(34px,4.8vw,58px)}.recipe__facts{color:#f6edddd6;font-size:13px}.recipe__actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:22px;display:flex}.tag-row{flex-wrap:wrap;gap:7px;margin-top:-8px;display:flex}.tag-row li{border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink-soft);background:#ffffff8c;padding:5px 11px;font-size:10px}.cookbar{z-index:6;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card), 0 1px 0 #fff9 inset;-webkit-backdrop-filter:blur(14px)saturate(1.15);backdrop-filter:blur(14px)saturate(1.15);background:#fffdf8db;grid-template-columns:148px 200px minmax(230px,1fr) minmax(180px,auto);gap:20px;padding:16px 20px;display:grid;position:sticky;top:12px}.tool,.clock,.timer-starter{align-content:start;gap:9px;display:grid}.tool__label,.clock__label{color:var(--ink-faint);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.tool__row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.clock__time{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;font-size:32px;font-weight:600;display:flex}.clock__time small{color:var(--saffron-deep);font-family:var(--font-label);opacity:.8;font-size:12px;font-weight:400}.clock__date{color:var(--ink-faint);font-size:11px}.timer-starter__presets{flex-wrap:wrap;gap:6px;display:flex}.timer-starter__custom{gap:6px;display:flex}.timer-starter__custom input{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--paper);outline:none;width:64px;padding:6px 10px;font-size:11px}.timer-list{grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:12px;display:grid}.timer-list--compact{grid-template-columns:1fr;gap:8px}.timer{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);box-shadow:var(--shadow-card);animation:rise .32s var(--ease-out) both;gap:7px;padding:13px 15px;display:grid}.timer--compact{box-shadow:none;color:var(--cream);background:#ffffff0f;border-color:#ffffff1f;padding:9px 11px}.timer__head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.timer__label{color:var(--ink-soft);font-size:11px}.timer--compact .timer__label{color:#f6edddb8}.timer__readout{font-family:var(--font-label);font-variant-numeric:tabular-nums;font-size:18px}.timer--compact .timer__readout{font-size:14px}.timer__recipe{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.timer__track{border-radius:var(--radius-pill);background:var(--paper-shade);height:4px;overflow:hidden}.timer--compact .timer__track{background:#ffffff24}.timer__track i{background:var(--sage);height:100%;transition:width .4s linear;display:block}.timer__actions{gap:6px;display:flex}.timer--compact .tiny-button{color:var(--cream);background:#ffffff1f}.timer--compact .tiny-button:hover{background:#ffffff38}.timer--done{border-color:var(--saffron);background:linear-gradient(160deg, #fdeee2, var(--card));animation:ring 1.2s var(--ease) 3}.timer--done .timer__readout{color:var(--saffron-deep)}.timer--compact.timer--done{color:var(--cream);background:#d4571f33;border-color:#ea8b458c}.timer--compact.timer--done .timer__readout{color:var(--saffron-soft);font-size:13px}.timer--done .timer__track i{background:var(--saffron)}.recipe__columns{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:26px;display:grid}.ingredients,.method{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);gap:16px;padding:24px 26px 26px;display:grid}.ingredients{position:sticky;top:128px}.ingredient{border-bottom:1px solid var(--line-soft);grid-template-columns:8px minmax(0,1fr) auto auto;align-items:baseline;gap:11px;padding:10px 0;font-size:13px;display:grid}.ingredient i{border-radius:50%;width:8px;height:8px;transform:translateY(-1px)}.ingredient__amount{color:var(--ink-soft);font-family:var(--font-label);text-align:right;font-size:11px;font-weight:400}.ingredient__tick{border-radius:var(--radius-pill);background:var(--paper-deep);color:var(--ink-faint);font-family:var(--font-label);opacity:0;transition:opacity .2s var(--ease), background .2s var(--ease), color .2s var(--ease);border:0;padding:3px 8px;font-size:9px}.ingredient:hover .ingredient__tick,.ingredient__tick:focus-visible,.ingredient--have .ingredient__tick{opacity:1}.ingredient--have .ingredient__tick{color:var(--sage-deep);background:#6b8a6333}.ingredient--have .ingredient__name,.ingredient--have .ingredient__amount{color:var(--ink-faint);text-decoration:line-through}.ingredients__note{color:var(--ink-faint);font-size:11px}.steps{gap:2px;display:grid}.step{padding:8px 0}.step+.step{border-top:1px solid var(--line-soft)}.step label{cursor:pointer;grid-template-columns:28px minmax(0,1fr);gap:14px;display:grid}.step input{opacity:0;pointer-events:none;position:absolute}.step__number{border:1px solid var(--line);background:var(--paper);width:28px;height:28px;color:var(--ink-soft);font-family:var(--font-label);transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);border-radius:50%;place-items:center;font-size:11px;display:grid;position:relative}.step label:hover .step__number{border-color:var(--sage);color:var(--sage-deep)}.step__text{padding-top:4px;font-size:14.5px;line-height:1.65}.step--done .step__number{background:var(--sage-deep);color:#f6faf3;animation:pop .28s var(--ease-out);border-color:#0000}.step--done .step__text{color:var(--ink-faint)}.step__timers{flex-wrap:wrap;gap:6px;margin:6px 0 4px 42px;display:flex}.notes{border-top:1px solid var(--line-soft);gap:9px;padding-top:8px;display:grid}.notes textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);resize:vertical;min-height:88px;transition:border-color .22s var(--ease), box-shadow .22s var(--ease);outline:none;padding:13px 15px;font-size:13px;line-height:1.6}.notes textarea:focus{border-color:var(--sage);box-shadow:0 6px 18px #45603f1f}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}@keyframes pop{50%{transform:translateY(2px)scale(1.2)}}@keyframes pulse{50%{opacity:.5}}@keyframes ring{0%,to{box-shadow:0 0 #d4571f00}40%{box-shadow:0 0 0 7px #d4571f29}}.grid>*{animation:rise .5s var(--ease-out) both}.grid>:first-child,.market-group:first-child{animation-delay:20ms}.grid>:nth-child(2),.market-group:nth-child(2){animation-delay:60ms}.grid>:nth-child(3),.market-group:nth-child(3){animation-delay:.1s}.grid>:nth-child(4),.market-group:nth-child(4){animation-delay:.14s}.grid>:nth-child(5),.market-group:nth-child(5){animation-delay:.18s}.grid>:nth-child(n+6),.market-group:nth-child(n+6){animation-delay:.22s}@media (max-width:1120px){.shell{--rail:214px}.cookbar{grid-template-columns:repeat(auto-fit,minmax(196px,1fr))}.recipe__columns{grid-template-columns:minmax(0,1fr)}.ingredients{position:static}.hero,.recipe__hero{grid-template-columns:minmax(0,1fr);min-height:0}.hero__media{aspect-ratio:16/9;grid-row:1;min-height:0}.hero__scrim{background:linear-gradient(0deg, var(--espresso) 0%, #221d178c 30%, transparent 75%)}.hero__glance ul{columns:150px 2}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}}@media (max-width:820px){.shell{display:block}.shell:before{display:none}.sidebar{background-color:var(--espresso);background-image:radial-gradient(320px 160px at 12% 0,#d4571f2e,#0000 70%);grid-template-columns:auto 1fr;align-items:center;gap:12px;height:auto;padding:12px 18px;display:grid;position:static}.nav{justify-content:flex-end;gap:4px;display:flex}.nav__link:before{width:0;height:2px;transition:width .3s var(--ease-out);top:auto;bottom:2px;left:50%;transform:translate(-50%)}.nav__link--active:before{width:18px;height:2px}.shelf,.sidebar__bottom{display:none}.topbar{height:62px}.page{padding-top:26px}.review{grid-template-columns:minmax(0,1fr)}.review .photo--review{max-width:250px}}@media (max-width:560px){body{font-size:14px}.board{gap:28px}.board__head{flex-direction:column;align-items:flex-start}.board__head h1{font-size:clamp(36px,12vw,48px)}.page{padding:22px 16px 48px}.grid,.stats{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid var(--line-soft)}.stat:last-child{border-bottom:0}.nav__link{flex-direction:column;gap:3px;padding:9px 10px;font-size:11px}.nav__link b{display:none}.topbar{gap:10px;padding-inline:16px}.topbar__search{padding:8px 11px}.topbar__search kbd{display:none}.hero,.recipe__hero{border-radius:var(--radius);padding:0}.hero__panel{padding:20px}.hero__glance ul{columns:auto}.sidebar{grid-template-columns:minmax(0,1fr);gap:10px}.nav{justify-content:space-between}.nav__link{flex:1;justify-content:center;gap:8px}.search,.importer,.cookbar,.ingredients,.method,.market-peek{padding:17px}.cookbar{position:static}.toast{max-width:none;bottom:14px;left:14px;right:14px}.ingredient__tick{opacity:1}}@media (max-width:390px){.topbar__search-label{display:none}.nav__link{padding-inline:4px}.section-head,.market-group__head{flex-direction:column;align-items:flex-start}}@media (hover:none){.ingredient__tick{opacity:1}}@media print{.sidebar,.topbar,.credit,.toast,.cookbar,.timer-list,.recipe__back,.recipe__actions,.ingredient__tick,.ingredients__note,.hero__media,.hero__scrim{display:none}body{background:#fff}.shell,.shell__main{display:block}.shell:before{display:none}.page{max-width:none;margin:0;padding:0}.recipe__hero{min-height:0;box-shadow:none;color:var(--ink);background:0 0;padding:0;display:block}.recipe__hero h1{text-shadow:none}.recipe__facts,.eyebrow--light{color:var(--ink-soft)}.recipe__columns{grid-template-columns:1fr 1fr}.ingredients,.method{box-shadow:none;border:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
