.rl-library{--rl-text-base:1rem;--rl-text-small:.75rem;--rl-text-meta:.875rem;--rl-text-chip:.9375rem;--rl-text-card:1.0625rem;--rl-text-lead:1.125rem;--rl-text-number:1.1875rem;--rl-text-detail:1.4375rem;--rl-text-icon:1.5rem;--rl-text-title:clamp(2.25rem, 8vw, 4rem);--rl-text-row:clamp(1.375rem, 3.6vw, 1.875rem);--rl-bg:#f7eacb;--rl-surface:#cfd0ac;--rl-ink:#313a42;--rl-muted:#5e6671;--rl-line:#2c4f3838;--rl-line-strong:#73856c;--rl-accent:#2c4f38;--rl-accent-ink:#f7eacb;--rl-sticker-bg:#2c4f38;--rl-sticker-ink:#f7eacb;--rl-grid:#2c4f380a;--rl-scrim:#1c16126b;--rl-font-head:Georgia, serif;--rl-font-body:Arial, sans-serif;--rl-radius:14px;--rl-sheet-radius:20px;--rl-sticker-radius:6px;--rl-pill:999px;--rl-space:1rem;--rl-gutter:clamp(1rem, 4vw, 4rem);--rl-max:1200px;--rl-edge:max(var(--rl-gutter), calc((100% - var(--rl-max)) / 2 + var(--rl-gutter)));--rl-card-width:72%;--rl-gap:.75rem;--rl-tap:44px;--rl-sticky-top:0px;--rl-focus-width:3px;--rl-motion:.2s;--rl-pointer:50%;--rl-drag:0px;color:var(--rl-ink);background:var(--rl-bg);font:400 var(--rl-text-base)/1.5 var(--rl-font-body);min-width:0;padding-bottom:calc(var(--rl-space) * 4)}.rl-library *,.rl-library :before,.rl-library :after{box-sizing:border-box}.rl-library [hidden]{display:none!important}.rl-library h1,.rl-library h2,.rl-library h3{font-family:var(--rl-font-head);color:var(--rl-ink);margin:0;font-weight:700;line-height:1.25}.rl-library p,.rl-library dl,.rl-library dd{margin:0}.rl-library button,.rl-library input{font:inherit;color:inherit}.rl-library button,.rl-library a{-webkit-tap-highlight-color:transparent}.rl-library button{cursor:pointer}.rl-library button:disabled{opacity:.4;cursor:default}.rl-library a{color:inherit;text-decoration:none}.rl-library :focus-visible,.rl-library .rl-close:focus{outline:var(--rl-focus-width) solid var(--rl-accent);outline-offset:calc(var(--rl-space) / 4)}.rl-hero{gap:calc(var(--rl-space) * 2);padding:calc(var(--rl-space) * 3) var(--rl-edge);border-bottom:1px solid var(--rl-line);background-image:linear-gradient(var(--rl-grid) 1px, transparent 1px), linear-gradient(90deg, var(--rl-grid) 1px, transparent 1px);background-size:calc(var(--rl-space) * 2) calc(var(--rl-space) * 2);display:grid}.rl-hero h1{font-size:var(--rl-text-title);margin-block:calc(var(--rl-space) * .75)}.rl-eyebrow{color:var(--rl-accent);font-size:var(--rl-text-small);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:calc(var(--rl-space) * .75);font-weight:600;display:flex}.rl-register{font-size:var(--rl-text-icon)}.rl-eyebrow:after{content:"";width:calc(var(--rl-space) * 2.5);opacity:.55;background:currentColor;height:1px}.rl-lead{max-width:calc(var(--rl-space) * 34);font-size:var(--rl-text-lead)}.rl-search{gap:calc(var(--rl-space) / 2);align-self:end;display:grid}.rl-search label{font-size:var(--rl-text-meta);font-weight:600}.rl-field{align-items:center;display:flex;position:relative}.rl-field .rl-icon{left:var(--rl-space);color:var(--rl-muted);pointer-events:none;position:absolute}.rl-search input{width:100%;min-width:0;min-height:calc(var(--rl-tap) + var(--rl-space) / 2);border:1px solid var(--rl-line-strong);border-radius:var(--rl-pill);background:var(--rl-bg);padding:calc(var(--rl-space) * .75) var(--rl-space) calc(var(--rl-space) * .75) calc(var(--rl-space) * 2.75)}.rl-search input::placeholder{color:var(--rl-muted);opacity:1}.rl-chips{top:var(--rl-sticky-top);z-index:20;gap:calc(var(--rl-space) / 2);scrollbar-width:none;padding:calc(var(--rl-space) / 2) var(--rl-edge);background:var(--rl-bg);border-bottom:1px solid var(--rl-line);display:flex;position:sticky;overflow-x:auto}.rl-chips a{min-height:var(--rl-tap);padding:calc(var(--rl-space) / 2) var(--rl-space);border:1px solid var(--rl-line-strong);border-radius:var(--rl-pill);white-space:nowrap;font-size:var(--rl-text-chip);flex:none;align-items:center;display:inline-flex}.rl-chips a[aria-current=true]{background:var(--rl-accent);color:var(--rl-accent-ink);border-color:var(--rl-accent)}.rl-row{padding-top:calc(var(--rl-space) * 2.5);scroll-margin-top:calc(var(--rl-sticky-top) + var(--rl-space) * 4)}.rl-row-head{justify-content:space-between;align-items:end;gap:var(--rl-space);padding-inline:var(--rl-edge);display:flex}.rl-row h2{font-size:var(--rl-text-row)}.rl-row-tools{align-items:center;gap:var(--rl-space);color:var(--rl-muted);font-size:var(--rl-text-meta);display:flex}.rl-row-tools p{white-space:nowrap}.rl-paging{gap:calc(var(--rl-space) / 2);display:none}.rl-icon{flex:none;width:1.125em;height:1.125em}.rl-paging button,.rl-expand,.rl-close{font-size:var(--rl-text-base);justify-content:center;align-items:center;padding:0;display:inline-flex}.rl-paging button,.rl-expand{border:1px solid var(--rl-line-strong);border-radius:var(--rl-pill);width:var(--rl-tap);height:var(--rl-tap);background:0 0;flex:none}.rl-track{grid-auto-flow:column;grid-auto-columns:var(--rl-card-width);gap:var(--rl-gap);padding:var(--rl-space) var(--rl-edge) calc(var(--rl-space) / 2);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--rl-edge);scrollbar-width:none;margin:0;list-style:none;display:grid;overflow-x:auto}.rl-card{scroll-snap-align:start;min-width:0;position:relative}.rl-photo{aspect-ratio:4/3;border-radius:var(--rl-radius);background:var(--rl-surface);position:relative;overflow:hidden}.rl-photo img{object-fit:cover;width:100%;height:100%;display:block}.rl-sticker{top:calc(var(--rl-space) * .625);left:calc(var(--rl-space) * .625);padding:calc(var(--rl-space) * .3) calc(var(--rl-space) * .55);border:1px solid var(--rl-sticker-ink);border-radius:var(--rl-sticker-radius);color:var(--rl-sticker-ink);background:var(--rl-sticker-bg);font-size:var(--rl-text-small);text-transform:uppercase;letter-spacing:.1em;font-weight:700;line-height:1;position:absolute}.rl-card h3{font-size:var(--rl-text-card);min-height:2.7em;margin-top:calc(var(--rl-space) * .75);line-height:1.35}.rl-title-link:after{content:"";border-radius:var(--rl-radius);position:absolute;inset:0}.rl-title-link:hover{text-decoration:underline}.rl-card[data-rl-open=true] .rl-photo{outline:var(--rl-focus-width) solid var(--rl-accent);outline-offset:calc(var(--rl-space) / 4)}.rl-card-foot{grid-template-columns:minmax(0, 1fr) var(--rl-tap);align-items:center;gap:calc(var(--rl-space) / 4);border-top:1px solid var(--rl-line);margin-top:calc(var(--rl-space) * .375);padding-top:calc(var(--rl-space) / 4);display:grid}.rl-lower{text-transform:lowercase}.rl-card-foot p{font-size:var(--rl-text-small);font-variant-numeric:tabular-nums}.rl-expand{z-index:1;color:var(--rl-accent);position:relative}.rl-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rl-results{gap:var(--rl-space);padding:var(--rl-space) var(--rl-edge);align-items:center;display:flex}.rl-results button,.rl-dismiss{min-height:var(--rl-tap);background:0 0;border:0;text-decoration:underline}.rl-empty{padding:calc(var(--rl-space) * 3) var(--rl-edge)}.rl-dialog{color:var(--rl-ink);background:0 0;border:0;max-width:none;max-height:none;padding:0;overflow:visible}.rl-dialog::backdrop{background:var(--rl-scrim)}.rl-panel{background:var(--rl-bg);border:1px solid var(--rl-line);border-radius:var(--rl-sheet-radius);max-height:calc(100dvh - var(--rl-space) * 2);flex-direction:column;display:flex;position:relative;overflow:hidden}.rl-close{top:calc(var(--rl-space) / 2);right:calc(var(--rl-space) / 2);z-index:3;width:var(--rl-tap);height:var(--rl-tap);border:1px solid var(--rl-line-strong);border-radius:var(--rl-pill);background:var(--rl-bg);position:absolute}.rl-detail-scroll{overscroll-behavior:contain;min-height:0;overflow-y:auto}.rl-detail-photo{aspect-ratio:16/9;background:var(--rl-surface)}.rl-detail-photo img{object-fit:cover;width:100%;height:100%;display:block}.rl-detail-body,.rl-gate-body{gap:var(--rl-space);padding:calc(var(--rl-space) * 1.25);display:grid}.rl-detail-body h2,.rl-gate-body h2{font-size:var(--rl-text-detail)}.rl-nutrition{padding:var(--rl-space);background:var(--rl-accent);color:var(--rl-accent-ink);border-radius:var(--rl-radius)}.rl-nutrition .rl-eyebrow{color:inherit;margin-bottom:calc(var(--rl-space) / 2)}.rl-macros{gap:calc(var(--rl-space) / 2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.rl-macros dt{font-size:var(--rl-text-small)}.rl-macros dd{font-family:var(--rl-font-head);font-weight:700;font-size:var(--rl-text-number)}.rl-macros small{font-family:var(--rl-font-body);font-size:var(--rl-text-small);padding-left:calc(var(--rl-space) / 8)}.rl-actions{gap:calc(var(--rl-space) * .625);padding:var(--rl-space) calc(var(--rl-space) * 1.25);border-top:1px solid var(--rl-line);flex:none;display:grid}.rl-button{gap:calc(var(--rl-space) / 2);text-align:center;min-height:calc(var(--rl-tap) + var(--rl-space) / 2);padding:calc(var(--rl-space) * .75) var(--rl-space);border:1px solid var(--rl-accent);border-radius:var(--rl-pill);background:var(--rl-accent);justify-content:center;align-items:center;display:inline-flex;color:var(--rl-accent-ink)!important}.rl-outline{border-color:var(--rl-line-strong);background:0 0;color:var(--rl-ink)!important}.rl-rate{gap:calc(var(--rl-space) / 2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.rl-rate-button{justify-content:center;align-items:center;gap:calc(var(--rl-space) / 2);min-height:var(--rl-tap);padding:calc(var(--rl-space) / 2) calc(var(--rl-space) / 2);border:1px solid var(--rl-line-strong);border-radius:var(--rl-pill);color:var(--rl-ink);font-size:var(--rl-text-meta);text-align:center;background:0 0;line-height:1.2;display:inline-flex}.rl-rate-button[aria-pressed=true]{background:var(--rl-accent);border-color:var(--rl-accent);color:var(--rl-accent-ink)}.rl-gate{width:min(calc(var(--rl-space) * 27), calc(100% - var(--rl-space) * 2));height:fit-content;margin:auto;position:fixed;inset:0}.rl-gate-body{overflow-y:auto}.rl-gate-recipe{grid-template-columns:calc(var(--rl-space) * 4.5) minmax(0, 1fr);align-items:center;gap:var(--rl-space);padding-right:calc(var(--rl-space) * 2.5);font-family:var(--rl-font-head);font-weight:700;display:grid}.rl-gate-recipe img{aspect-ratio:1;object-fit:cover;border-radius:var(--rl-radius);width:100%;height:auto}.rl-grab{display:none}@media (min-width:560px){.rl-library{--rl-card-width:44%;--rl-gap:1rem}}@media (min-width:768px){.rl-library{--rl-card-width:14.75rem;--rl-gap:1.25rem}.rl-paging{display:flex}.rl-details{margin:var(--rl-space) var(--rl-edge) 0;width:auto;scroll-margin-top:calc(var(--rl-sticky-top) + var(--rl-space) * 4);position:relative;inset:auto}.rl-details:before{content:"";left:var(--rl-pointer);top:calc(var(--rl-space) * -.5);width:var(--rl-space);height:var(--rl-space);background:var(--rl-bg);border-left:1px solid var(--rl-line);border-top:1px solid var(--rl-line);z-index:1;position:absolute;transform:translate(-50%)rotate(45deg)}.rl-details .rl-detail-scroll{grid-template-columns:minmax(0,2fr) minmax(0,3fr);display:grid}.rl-details .rl-detail-photo{aspect-ratio:4/3;margin:calc(var(--rl-space) * 1.5);border-radius:var(--rl-radius);overflow:hidden}.rl-details .rl-detail-body{padding-right:calc(var(--rl-space) * 4)}.rl-details .rl-actions{border-top:0;grid-template-columns:1fr 1fr;margin-left:40%}.rl-details .rl-rate{grid-column:1/-1}}@media (min-width:1024px){.rl-library{--rl-card-width:16rem}}@media (min-width:860px){.rl-hero{gap:calc(var(--rl-space) * 4);grid-template-columns:minmax(0,7fr) minmax(0,4fr)}}@media (max-width:767px){.rl-dialog{width:100%;transform:translateY(var(--rl-drag));margin:0;position:fixed;inset:auto 0 0}.rl-panel{max-height:min(90dvh, calc(100dvh - var(--rl-space) * 2));border-radius:var(--rl-sheet-radius) var(--rl-sheet-radius) 0 0;padding-bottom:env(safe-area-inset-bottom)}.rl-grab{width:50%;height:var(--rl-tap);padding:calc(var(--rl-space) / 2);z-index:2;touch-action:none;background:0 0;border:0;justify-content:center;align-items:start;display:flex;position:absolute;top:0;left:25%}.rl-grab span{width:var(--rl-tap);height:calc(var(--rl-space) / 3);border-radius:var(--rl-pill);background:var(--rl-sticker-ink);border:1px solid var(--rl-line-strong)}.rl-gate-body{padding-top:calc(var(--rl-space) * 3)}.rl-dialog[open] .rl-panel{animation:rl-sheet var(--rl-motion) ease-out}}@keyframes rl-sheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.rl-library *,.rl-library :before,.rl-library :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
