.post-card{flex-direction:column;display:flex}.post-card__image-link,.post-card__content-link{color:inherit;flex-direction:column;text-decoration:none;display:flex}.post-card__image-link{width:100%;height:100%}.post-card__image-container{aspect-ratio:1;background-color:var(--color-surface);width:100%;position:relative;overflow:hidden}.post-card__carousel{scroll-snap-type:x mandatory;scrollbar-width:none;width:100%;height:100%;display:flex;overflow-x:auto}.post-card__carousel::-webkit-scrollbar{display:none}.post-card__slide{scroll-snap-align:start;min-width:100%;height:100%;position:relative}.post-card__image{object-fit:cover;width:100%;height:100%;transition:opacity .3s}.post-card:hover .post-card__image{opacity:.92}.post-card__arrows{pointer-events:none;opacity:0;z-index:3;justify-content:space-between;width:100%;padding:0 .5rem;transition:opacity .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}@media (width<=1024px){.post-card__arrows{display:none}}.post-card:hover .post-card__arrows{opacity:1}.post-card__arrow{width:28px;height:28px;color:var(--color-text);cursor:pointer;pointer-events:auto;background-color:#ffffffb3;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background-color .2s,transform .2s;display:flex;box-shadow:0 2px 4px #0000001a}.post-card__arrow:hover:not(:disabled){background-color:#fffffff2;transform:scale(1.05)}.post-card__arrow:disabled{opacity:.5;cursor:default}.post-card__indicators{z-index:2;pointer-events:none;gap:.25rem;display:flex;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.post-card__dot{background-color:#ffffff73;border-radius:50%;width:5px;height:5px;transition:background-color .2s}.post-card__dot.is-active{background-color:#ffffffe6}.post-card__content{padding:.5rem 0 0}.post-card__meta{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.15rem;display:flex}.post-card__date{color:var(--color-muted);white-space:nowrap;letter-spacing:.02em;font-size:.75rem;font-weight:400}.post-card__title{font-size:.93rem;font-family:var(--font-body);color:var(--color-text);text-transform:lowercase;flex:1;margin:0;font-weight:500;line-height:1.3}.post-card__title:first-letter{text-transform:uppercase}.post-card__excerpt{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.75rem;font-weight:300;line-height:1.5;display:-webkit-box;overflow:hidden}.filter-panel{grid-template-columns:1.8fr 1fr;grid-template-areas:"salty sweet""occasions sweet";gap:1rem;width:100%;display:grid}@media (width<=1024px){.filter-panel{grid-template-columns:1fr;grid-template-areas:"salty""sweet""occasions"}}.filter-panel__section{border:1px solid var(--color-border);border-radius:8px;padding:.55rem 1.25rem}.filter-panel__section--salty{grid-area:salty}.filter-panel__section--sweet{grid-area:sweet}.filter-panel__section--occasions{grid-area:occasions}.filter-panel__label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted);margin-top:0;margin-bottom:.5rem;font-size:.8125rem;font-weight:700}.filter-panel__grid{column-gap:1.25rem}@media (width<=640px){.filter-panel__grid{column-count:auto;flex-wrap:wrap;gap:.4rem;display:flex}}.filter-panel__section--salty .filter-panel__grid{column-count:3}@media (width<=1024px){.filter-panel__section--salty .filter-panel__grid{column-count:2}}.filter-panel__section--sweet .filter-panel__grid{column-count:2}.filter-panel__section--occasions .filter-panel__grid{flex-wrap:wrap;gap:.25rem .4rem;display:flex}.filter-panel__category-card{break-inside:avoid;flex-direction:column;align-items:flex-start;gap:.25rem;margin-bottom:.75rem;display:flex}@media (width<=640px){.filter-panel__category-card{margin-bottom:.1rem}}.filter-panel__section--occasions .filter-panel__category-card{margin-bottom:.1rem}.filter-panel__pill{background-color:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;border-radius:4px;align-items:center;padding:.25rem .5rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.filter-panel__pill-icon{opacity:.8;align-items:center;margin-right:8px;display:inline-flex}.filter-panel__pill.is-active{background-color:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}.filter-panel__pill.is-partially-active{background-color:#8080801f;border-color:#8080804d}.filter-panel__sub-tags{border-left:1px solid var(--color-border);flex-direction:column;gap:.15rem;margin-left:.5rem;padding-left:.5rem;display:flex}@media (width<=640px){.filter-panel__sub-tags{display:none}}.filter-panel__sub-pill{color:var(--color-muted);cursor:pointer;text-align:left;background-color:#0000;border:1px solid #0000;border-radius:4px;padding:.15rem .4rem;font-size:.8125rem;line-height:1.2;transition:all .2s}.filter-panel__sub-pill:hover{color:var(--color-text)}.filter-panel__sub-pill.is-active{color:var(--color-bg);border-color:var(--color-text);background-color:var(--color-text);font-weight:600}.post-grid-layout{flex-direction:column;display:flex}.post-grid-layout--mounted .post-grid{opacity:1!important}.post-grid-layout__top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.7rem;display:flex}.post-grid-layout__top-left{flex-direction:column;flex:1;align-items:flex-start;gap:.5rem;min-width:0;display:flex}@media (width>=641px){.post-grid-layout__top-left{flex-direction:row;align-items:center;gap:1.5rem}}.post-grid-layout__switch{cursor:pointer;color:var(--color-text);user-select:none;opacity:0;align-items:center;max-height:0;font-size:.8125rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;overflow:hidden}.post-grid-layout__switch.is-visible{opacity:1;max-height:50px;margin-top:.25rem}.post-grid-layout__switch input[type=checkbox]{display:none}.post-grid-layout__switch-slider{background-color:var(--color-border);border-radius:18px;width:32px;height:18px;margin-right:6px;transition:background-color .2s;display:inline-block;position:relative}.post-grid-layout__switch-slider:after{content:"";background-color:var(--color-bg);border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:2px;left:2px}input[type=checkbox]:checked+.post-grid-layout__switch-slider{background-color:var(--color-text)}input[type=checkbox]:checked+.post-grid-layout__switch-slider:after{transform:translate(14px)}.post-grid-layout__switch-text{font-weight:500}.post-grid-layout__search-summary{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.875rem;display:block;overflow:hidden}.post-grid-layout__search-summary strong{color:var(--color-text);font-weight:600}.post-grid-layout__search-summary button{color:var(--color-accent);cursor:pointer;text-underline-offset:2px;font-size:.8125rem;text-decoration:underline}.post-grid-layout__top-right{align-items:center;gap:1.25rem;margin-left:auto;display:flex}.post-grid-layout__clear-filters{color:var(--color-muted);cursor:pointer;text-underline-offset:4px;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:500;text-decoration:underline}.post-grid-layout__clear-filters:hover{color:var(--color-text)}@media (width<=640px){.post-grid-layout__clear-filters{display:none}}.post-grid-layout__filter-toggle{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;white-space:nowrap;background-color:#0000;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.post-grid-layout__filter-toggle:hover,.post-grid-layout__filter-toggle.is-active{border-color:var(--color-heading);background-color:var(--color-heading);color:var(--color-bg)}.post-grid-layout__filter-badge{background-color:var(--color-accent);color:var(--color-bg);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.7rem;font-weight:700;display:inline-flex}.post-grid-layout__filter-container{opacity:0;width:100%;max-height:0;margin-bottom:0;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s,margin .3s;overflow:hidden}.post-grid-layout__filter-container.is-open{opacity:1;max-height:1200px;margin-bottom:2rem}.post-grid-layout__notice{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-muted);border-radius:4px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.875rem;display:flex}.post-grid-layout__notice:has(~.post-grid-layout__also-like){margin-bottom:.5rem}@media (width<=640px){.post-grid-layout__notice{flex-direction:column;align-items:flex-start}}.post-grid-layout__notice p{margin:0;line-height:1.5}.post-grid-layout__notice .post-grid-layout__clear-btn{color:var(--color-heading);border:1px solid var(--color-heading);white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;padding:.4rem 1rem;font-weight:500;transition:all .2s}.post-grid-layout__notice .post-grid-layout__clear-btn:hover{background:var(--color-heading);color:var(--color-bg)}.post-grid-layout__empty{text-align:center;color:var(--color-muted);padding:4rem 1rem}.post-grid-layout__empty button{color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:4px;margin-top:1rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500}.post-grid-layout__empty button:hover{border-color:var(--color-text)}.post-grid-layout__actions{justify-content:center;margin-top:3rem;margin-bottom:2rem;display:flex}.post-grid-layout__load-more{color:var(--color-muted);border:1px solid var(--color-border);cursor:pointer;letter-spacing:.01em;background:0 0;border-radius:4px;padding:.625rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s}.post-grid-layout__load-more:hover{border-color:var(--color-text);color:var(--color-text)}.post-grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;display:grid}@media (width<=1024px){.post-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (width<=640px){.post-grid{grid-template-columns:1fr;gap:2rem}}.post-grid-layout__also-like{border-top:1px solid var(--color-border);margin-top:2.5rem;padding-top:2rem}.post-grid-layout__notice~.post-grid-layout__also-like{margin-top:1rem}.post-grid-layout__also-like h2{color:var(--color-heading);margin-bottom:1.5rem;font-size:1.5rem}
