.action-hint-icon-module__PCc3bG__icon{vertical-align:-.35em;border:1px solid color-mix(in srgb, var(--color-text-soft) 28%, transparent);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-surface-strong) 84%, var(--color-bg) 16%);width:1.55em;height:1.55em;color:var(--color-text);justify-content:center;align-items:center;margin-inline:.1em;display:inline-flex}.action-hint-icon-module__PCc3bG__icon svg{flex-shrink:0;width:.95em;height:.95em}
.feature-hint-module__mvApaW__root{gap:var(--space-3);border:1px solid color-mix(in srgb, var(--color-accent) 28%, var(--color-border));border-radius:var(--radius-md);background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 8%, transparent), transparent 42%), var(--color-surface);color:var(--color-text);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;padding:.95rem;animation:.18s cubic-bezier(.23,1,.32,1) feature-hint-module__mvApaW__hintEnter;display:grid;box-shadow:0 10px 28px #1a263a17}.feature-hint-module__mvApaW__rootCompact{grid-template-columns:auto minmax(0,1fr)}.feature-hint-module__mvApaW__iconWrap{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-accent) 14%, var(--color-surface-soft));width:2rem;height:2rem;color:var(--color-accent-dark);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.feature-hint-module__mvApaW__iconWrap svg{width:1.15rem;height:1.15rem}.feature-hint-module__mvApaW__content{gap:.25rem;min-width:0;display:grid}.feature-hint-module__mvApaW__title{color:var(--color-text);font-size:.94rem;font-weight:750;line-height:1.25}.feature-hint-module__mvApaW__text{max-width:68ch;color:var(--color-text-soft);text-wrap:pretty;font-size:.9rem;line-height:1.5}.feature-hint-module__mvApaW__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.feature-hint-module__mvApaW__rootCompact .feature-hint-module__mvApaW__actions{grid-column:2;justify-content:flex-start}.feature-hint-module__mvApaW__helpLink,.feature-hint-module__mvApaW__secondaryButton,.feature-hint-module__mvApaW__primaryButton{border-radius:var(--radius-pill);min-height:2.25rem;font:inherit;white-space:nowrap;cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast), transform var(--motion-fast), opacity var(--motion-fast);justify-content:center;align-items:center;padding:.45rem .75rem;font-size:.82rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.feature-hint-module__mvApaW__helpLink,.feature-hint-module__mvApaW__secondaryButton{border:1px solid var(--color-border);background:var(--color-surface-soft);color:var(--color-text-soft)}.feature-hint-module__mvApaW__primaryButton{background:var(--color-accent);color:#141b29;border:1px solid #0000}.feature-hint-module__mvApaW__helpLink:hover,.feature-hint-module__mvApaW__helpLink:focus-visible,.feature-hint-module__mvApaW__secondaryButton:hover,.feature-hint-module__mvApaW__secondaryButton:focus-visible{border-color:var(--color-border-strong);background:var(--color-surface-strong);color:var(--color-text);outline:none}.feature-hint-module__mvApaW__primaryButton:hover,.feature-hint-module__mvApaW__primaryButton:focus-visible{background:var(--color-accent-dark);outline:none}.feature-hint-module__mvApaW__helpLink:active,.feature-hint-module__mvApaW__secondaryButton:active,.feature-hint-module__mvApaW__primaryButton:active{transform:scale(.98)}.feature-hint-module__mvApaW__primaryButton:disabled{cursor:not-allowed;opacity:.65}@keyframes feature-hint-module__mvApaW__hintEnter{0%{opacity:0;transform:translateY(6px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:760px){.feature-hint-module__mvApaW__root{grid-template-columns:auto minmax(0,1fr)}.feature-hint-module__mvApaW__actions{grid-column:2;justify-content:flex-start}}@media (max-width:520px){.feature-hint-module__mvApaW__actions{grid-column:1/-1}.feature-hint-module__mvApaW__helpLink,.feature-hint-module__mvApaW__secondaryButton,.feature-hint-module__mvApaW__primaryButton{flex:8.5rem}}@media (prefers-reduced-motion:reduce){.feature-hint-module__mvApaW__root{animation:none}.feature-hint-module__mvApaW__helpLink,.feature-hint-module__mvApaW__secondaryButton,.feature-hint-module__mvApaW__primaryButton{transition-duration:0s}}
.add-to-shopping-list-modal-module__rXqska__overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:200;padding:var(--space-4);background:#0a122094;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-to-shopping-list-modal-module__rXqska__modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex-direction:column;width:100%;max-width:480px;max-height:85vh;display:flex;overflow:hidden}.add-to-shopping-list-modal-module__rXqska__modalHeader{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.add-to-shopping-list-modal-module__rXqska__modalTitle{color:var(--color-text);margin:0;font-size:1.05rem;font-weight:700}.add-to-shopping-list-modal-module__rXqska__closeButton{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-text-soft);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.add-to-shopping-list-modal-module__rXqska__closeButton:hover:not(:disabled){background:var(--color-surface-strong);color:var(--color-text)}.add-to-shopping-list-modal-module__rXqska__closeButton:disabled{opacity:.5;cursor:not-allowed}.add-to-shopping-list-modal-module__rXqska__modalBody{padding:var(--space-4) var(--space-5);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.add-to-shopping-list-modal-module__rXqska__spinnerWrap{align-items:center;gap:var(--space-3);padding:var(--space-6) 0;flex-direction:column;display:flex}.add-to-shopping-list-modal-module__rXqska__spinner{border:3px solid var(--color-border-strong);border-top-color:var(--color-accent);border-radius:50%;width:2rem;height:2rem;animation:.7s linear infinite add-to-shopping-list-modal-module__rXqska__spin}.add-to-shopping-list-modal-module__rXqska__spinnerText{color:var(--color-text-soft);margin:0;font-size:.875rem}@keyframes add-to-shopping-list-modal-module__rXqska__spin{to{transform:rotate(360deg)}}.add-to-shopping-list-modal-module__rXqska__errorText{color:#dc322f;margin:0;font-size:.875rem;line-height:1.45}.add-to-shopping-list-modal-module__rXqska__emptyText{color:var(--color-text-soft);text-align:center;padding:var(--space-4) 0;margin:0;font-size:.875rem;line-height:1.5}.add-to-shopping-list-modal-module__rXqska__selectAllRow{padding:var(--space-2) var(--space-3);background:var(--color-surface-soft);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.add-to-shopping-list-modal-module__rXqska__selectAllLabel{align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.add-to-shopping-list-modal-module__rXqska__selectAllText{color:var(--color-text);font-size:.85rem;font-weight:600}.add-to-shopping-list-modal-module__rXqska__selectedCount{color:var(--color-text-soft);font-variant-numeric:tabular-nums;font-size:.8rem}.add-to-shopping-list-modal-module__rXqska__recipeGroup{gap:var(--space-1);flex-direction:column;display:flex}.add-to-shopping-list-modal-module__rXqska__recipeGroupTitle{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-1) 0;margin:0;font-size:.8rem;font-weight:700}.add-to-shopping-list-modal-module__rXqska__ingredientList{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.add-to-shopping-list-modal-module__rXqska__ingredientItem{flex-direction:column;display:flex}.add-to-shopping-list-modal-module__rXqska__ingredientLabel{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--motion-fast);-webkit-user-select:none;user-select:none;display:flex}.add-to-shopping-list-modal-module__rXqska__ingredientLabel:hover{background:var(--color-surface-soft)}.add-to-shopping-list-modal-module__rXqska__checkbox{width:1.05rem;height:1.05rem;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.add-to-shopping-list-modal-module__rXqska__ingredientName{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.9rem;overflow:hidden}.add-to-shopping-list-modal-module__rXqska__ingredientAmount{color:var(--color-text-soft);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.82rem}.add-to-shopping-list-modal-module__rXqska__successBlock{align-items:center;gap:var(--space-3);padding:var(--space-5) 0;text-align:center;flex-direction:column;display:flex}.add-to-shopping-list-modal-module__rXqska__successIcon{color:#2aa198;width:2.5rem;height:2.5rem}.add-to-shopping-list-modal-module__rXqska__successText{color:var(--color-text);margin:0;font-size:.95rem;line-height:1.5}.add-to-shopping-list-modal-module__rXqska__modalFooter{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.add-to-shopping-list-modal-module__rXqska__primaryButton{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;cursor:pointer;transition:background var(--motion-fast), opacity var(--motion-fast);border:none;font-size:.875rem;font-weight:600;display:inline-flex}.add-to-shopping-list-modal-module__rXqska__primaryButton:hover:not(:disabled){background:var(--color-accent-dark)}.add-to-shopping-list-modal-module__rXqska__primaryButton:disabled{opacity:.5;cursor:not-allowed}.add-to-shopping-list-modal-module__rXqska__ghostButton{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-soft);cursor:pointer;transition:border-color var(--motion-fast), color var(--motion-fast);background:0 0;font-size:.875rem;font-weight:500;display:inline-flex}.add-to-shopping-list-modal-module__rXqska__ghostButton:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.add-to-shopping-list-modal-module__rXqska__ghostButton:disabled{opacity:.5;cursor:not-allowed}
.recipe-video-block-module__djaPQq__block{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.recipe-video-block-module__djaPQq__title{font-family:var(--font-display);color:var(--color-text);margin:0;font-size:1.15rem}.recipe-video-block-module__djaPQq__frame{aspect-ratio:16/9;border-radius:var(--radius-lg);background:var(--color-surface);width:100%;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.recipe-video-block-module__djaPQq__player,.recipe-video-block-module__djaPQq__facade{border:0;width:100%;height:100%;position:absolute;inset:0}.recipe-video-block-module__djaPQq__facade{justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;background:var(--color-surface);color:#fff;transition:filter var(--motion-fast), transform var(--motion-fast);flex-direction:column;padding:0;display:flex}.recipe-video-block-module__djaPQq__facade:hover{filter:brightness(1.03)}.recipe-video-block-module__djaPQq__facade:focus-visible{outline:3px solid var(--color-accent);outline-offset:-3px}.recipe-video-block-module__djaPQq__thumbnail,.recipe-video-block-module__djaPQq__placeholder{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.recipe-video-block-module__djaPQq__placeholder{background:linear-gradient(135deg, var(--color-bg-deep), var(--color-surface-strong))}.recipe-video-block-module__djaPQq__facade:after{content:"";background:#0f162552;position:absolute;inset:0}.recipe-video-block-module__djaPQq__playGlyph{z-index:1;background:var(--color-accent);color:#fff;width:64px;height:64px;box-shadow:var(--shadow-soft);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.recipe-video-block-module__djaPQq__playGlyph svg{margin-left:3px}.recipe-video-block-module__djaPQq__caption{z-index:1;font-family:var(--font-body);letter-spacing:.01em;font-size:.95rem;font-weight:600;position:relative}
.recipe-detail-page-module__DZCgFa__page{max-width:var(--layout-content-max);padding:var(--space-4) var(--space-3) var(--space-6);margin:0 auto}.recipe-detail-page-module__DZCgFa__recipe{gap:var(--space-5);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__featureHint{margin-bottom:var(--space-4)}.recipe-detail-page-module__DZCgFa__backButton{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-soft);font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);padding:.5rem .95rem;font-size:.875rem;font-weight:600;display:inline-flex}.recipe-detail-page-module__DZCgFa__backButton:hover,.recipe-detail-page-module__DZCgFa__backButton:focus-visible{background:var(--color-surface-strong);border-color:var(--color-border-strong);color:var(--color-text);box-shadow:var(--shadow-soft);outline:none;transform:translate(-3px)}.recipe-detail-page-module__DZCgFa__backButtonIcon{flex-shrink:0;width:1rem;height:1rem}.recipe-detail-page-module__DZCgFa__ownerActions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.recipe-detail-page-module__DZCgFa__editButton,.recipe-detail-page-module__DZCgFa__deleteButton{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);padding:.6rem 1.1rem;font-size:.9375rem;font-weight:600}.recipe-detail-page-module__DZCgFa__editButton:hover,.recipe-detail-page-module__DZCgFa__deleteButton:hover{background:var(--color-surface-strong);border-color:var(--color-border-strong);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.recipe-detail-page-module__DZCgFa__editButton:disabled,.recipe-detail-page-module__DZCgFa__deleteButton:disabled{cursor:not-allowed;opacity:.6;transform:none}.recipe-detail-page-module__DZCgFa__deleteButton{border-color:color-mix(in srgb, #c62828 30%, var(--color-border));color:#b42318}.recipe-detail-page-module__DZCgFa__deleteButton:hover{background:color-mix(in srgb, #c62828 10%, var(--color-surface));border-color:#c62828}.recipe-detail-page-module__DZCgFa__ownerActionsError{color:#b42318;flex-basis:100%;margin:0;font-size:.875rem}.recipe-detail-page-module__DZCgFa__hero{border-radius:var(--radius-lg);aspect-ratio:16/9;background:var(--color-surface);box-shadow:var(--shadow-soft);isolation:isolate;position:relative;overflow:hidden}.recipe-detail-page-module__DZCgFa__heroImage{object-fit:cover;z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.recipe-detail-page-module__DZCgFa__hero:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#080e1899 0%,#080e1833 22%,#080e1859 50%,#080e18d9 78%,#080e18f5 100%),linear-gradient(90deg,#080e1859 0%,#080e1800 55%);position:absolute;inset:0}.recipe-detail-page-module__DZCgFa__heroTopBar{top:var(--space-4);left:var(--space-4);right:var(--space-4);justify-content:space-between;align-items:flex-start;gap:var(--space-3);z-index:3;display:flex;position:absolute}.recipe-detail-page-module__DZCgFa__ratingControl{align-items:flex-start;gap:var(--space-2);flex-direction:column;max-width:280px;display:flex}.recipe-detail-page-module__DZCgFa__ratingBadge{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);color:#fff;cursor:pointer;font:inherit;transition:background var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);background:#0c121e8c;border:1px solid #ffffff40;align-items:center;gap:.5rem;padding:.45rem .85rem .45rem .65rem;line-height:1;display:inline-flex;box-shadow:0 8px 24px #00000040}.recipe-detail-page-module__DZCgFa__ratingBadge:hover,.recipe-detail-page-module__DZCgFa__ratingBadge:focus-visible{background:#0c121ebf;border-color:#ffffff73;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #ffb51b4d,0 10px 28px #0000004d}.recipe-detail-page-module__DZCgFa__ratingIcon{color:#ffb51b;filter:drop-shadow(0 1px 1px #00000059);flex-shrink:0;width:1.1rem;height:1.1rem}.recipe-detail-page-module__DZCgFa__ratingValue{letter-spacing:-.01em;font-size:.95rem;font-weight:700}.recipe-detail-page-module__DZCgFa__ratingCount{color:#ffffffb8;white-space:nowrap;border-left:1px solid #fff3;padding-left:.45rem;font-size:.75rem;font-weight:600}.recipe-detail-page-module__DZCgFa__ratingBadgeCta{text-transform:uppercase;letter-spacing:.06em;color:#ffb51b;border-left:1px solid #fff3;padding-left:.45rem;font-size:.75rem;font-weight:700}.recipe-detail-page-module__DZCgFa__ratingError{border-radius:var(--radius-md);color:#b42318;max-width:280px;box-shadow:var(--shadow-soft);background:#fffffff0;margin:0;padding:.45rem .7rem;font-size:.8125rem;line-height:1.35}.recipe-detail-page-module__DZCgFa__heroActionsBlock{align-items:flex-end;gap:var(--space-2);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__heroActions{--recipe-action-size:40px;--recipe-action-glyph:22px;border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);background:#0c121e80;border:1px solid #ffffff2e;align-items:center;gap:.25rem;padding:.25rem;display:flex;box-shadow:0 8px 24px #00000040}.recipe-detail-page-module__DZCgFa__actionButton{width:var(--recipe-action-size);min-width:var(--recipe-action-size);height:var(--recipe-action-size);color:#fff;cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.recipe-detail-page-module__DZCgFa__actionButton:focus-visible{outline-offset:2px;background:#ffffff29;outline:2px solid #ffffffbf}.recipe-detail-page-module__DZCgFa__actionButton:active{transform:scale(.97)}.recipe-detail-page-module__DZCgFa__actionButton:disabled{cursor:not-allowed;opacity:.55;transform:none}.recipe-detail-page-module__DZCgFa__actionGlyph{width:var(--recipe-action-glyph);height:var(--recipe-action-glyph);flex:0 0 var(--recipe-action-glyph);place-items:center;line-height:0;display:inline-grid}.recipe-detail-page-module__DZCgFa__actionIcon{flex-shrink:0;width:18px;height:18px;display:block;overflow:visible}.recipe-detail-page-module__DZCgFa__shareIcon{width:18px;height:18px}.recipe-detail-page-module__DZCgFa__bookmarkIcon{width:17px;height:19px}.recipe-detail-page-module__DZCgFa__cartIcon{width:19px;height:18px;transform:translateY(.5px)}.recipe-detail-page-module__DZCgFa__heartIcon{width:18px;height:18px;transform:translateY(.5px)}.recipe-detail-page-module__DZCgFa__saveButton:focus-visible{background:var(--color-accent);color:#fff}.recipe-detail-page-module__DZCgFa__shoppingListButton:focus-visible{color:#fff;background:#2aa198}.recipe-detail-page-module__DZCgFa__likeButton{width:auto;min-width:var(--recipe-action-size);border-radius:var(--radius-pill);gap:.28rem;padding:0 .72rem 0 .58rem}.recipe-detail-page-module__DZCgFa__likeButton:focus-visible{color:#fff;background:#ff4757d9}.recipe-detail-page-module__DZCgFa__likeButtonActive{color:#fff;background:#ff4757}@media (hover:hover) and (pointer:fine){.recipe-detail-page-module__DZCgFa__actionButton:hover{background:#ffffff29}.recipe-detail-page-module__DZCgFa__actionButton:active{transform:scale(.97)}.recipe-detail-page-module__DZCgFa__saveButton:hover{background:var(--color-accent);color:#fff}.recipe-detail-page-module__DZCgFa__shoppingListButton:hover{color:#fff;background:#2aa198}.recipe-detail-page-module__DZCgFa__likeButton:hover{color:#fff;background:#ff4757d9}.recipe-detail-page-module__DZCgFa__likeButtonActive:hover{background:#ec3a4a}}.recipe-detail-page-module__DZCgFa__likeCount{letter-spacing:-.01em;font-size:.8125rem;font-weight:700;line-height:1}.recipe-detail-page-module__DZCgFa__actionMessage{border-radius:var(--radius-pill);color:#fff;background:#0c121eb8;max-width:16rem;margin:0;padding:.42rem .68rem;font-size:.75rem;font-weight:700;line-height:1.25;box-shadow:0 8px 22px #0003}.recipe-detail-page-module__DZCgFa__likeError{border-radius:var(--radius-md);color:#b42318;text-align:right;max-width:280px;box-shadow:var(--shadow-soft);background:#fffffff0;margin:0;padding:.45rem .7rem;font-size:.8125rem;line-height:1.35}.recipe-detail-page-module__DZCgFa__heroOverlay{padding:var(--space-5) var(--space-5) var(--space-5);z-index:2;color:#fff;position:absolute;bottom:0;left:0;right:0}.recipe-detail-page-module__DZCgFa__heroCard{gap:var(--space-3);flex-direction:column;max-width:720px;display:flex}.recipe-detail-page-module__DZCgFa__heroTitle{font-family:var(--font-display);color:#fff;text-shadow:0 2px 14px #0009,0 1px 3px #00000080;letter-spacing:-.01em;margin:0;font-size:clamp(1.5rem,3.2vw,2.4rem);font-weight:700;line-height:1.15}.recipe-detail-page-module__DZCgFa__heroDescription{color:#fffffff2;text-shadow:0 1px 10px #0000008c,0 1px 2px #00000073;max-width:620px;margin:0;font-size:clamp(.875rem,1.4vw,1rem);line-height:1.55}.recipe-detail-page-module__DZCgFa__heroTags{gap:var(--space-1);flex-wrap:wrap;display:flex}.recipe-detail-page-module__DZCgFa__heroTag{border-radius:var(--radius-pill);letter-spacing:.03em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;text-shadow:0 1px 4px #0006;background:#0c121e99;border:1px solid #ffffff59;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex;box-shadow:0 4px 12px #0003}.recipe-detail-page-module__DZCgFa__heroTagDot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem;display:inline-block;box-shadow:0 0 0 1px #fff6}.recipe-detail-page-module__DZCgFa__metaBadgesContainer{gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.recipe-detail-page-module__DZCgFa__metaBadge{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast);display:flex}.recipe-detail-page-module__DZCgFa__metaBadge:hover{border-color:var(--color-border-strong);background:var(--color-surface);transform:translateY(-2px)}.recipe-detail-page-module__DZCgFa__metaBadgeIcon{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-accent) 12%, var(--color-surface));flex-shrink:0;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;font-size:1.3rem;display:inline-flex}.recipe-detail-page-module__DZCgFa__metaBadgeLabel{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.15rem;font-size:.6875rem;font-weight:600}.recipe-detail-page-module__DZCgFa__metaBadgeValue{color:var(--color-text);font-size:.95rem;font-weight:700;line-height:1.2}.recipe-detail-page-module__DZCgFa__mainLayout{gap:var(--space-5);height:min(760px, calc(100vh - var(--space-6)));grid-template-columns:340px 1fr;align-items:stretch;min-height:520px;display:grid}.recipe-detail-page-module__DZCgFa__mainLayoutSingle{grid-template-columns:1fr}.recipe-detail-page-module__DZCgFa__ingredientsSidebar{min-height:0;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex-direction:column;display:flex;overflow:hidden}.recipe-detail-page-module__DZCgFa__ingredientsList::-webkit-scrollbar{width:6px}.recipe-detail-page-module__DZCgFa__stepsList::-webkit-scrollbar{width:6px}.recipe-detail-page-module__DZCgFa__ingredientsList::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-pill)}.recipe-detail-page-module__DZCgFa__stepsList::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-pill)}.recipe-detail-page-module__DZCgFa__ingredientsHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;display:flex}.recipe-detail-page-module__DZCgFa__ingredientsTitle{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700}.recipe-detail-page-module__DZCgFa__servingControl{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.recipe-detail-page-module__DZCgFa__servingControlLabel{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-soft);font-size:.7rem;font-weight:600}.recipe-detail-page-module__DZCgFa__servingStepper{align-items:center;gap:var(--space-1);background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:.2rem;display:flex}.recipe-detail-page-module__DZCgFa__servingStepButton{border-radius:var(--radius-pill);background:var(--color-surface);width:2.5rem;height:2.5rem;color:var(--color-text);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.15rem;font-weight:700;line-height:1;transition:background-color .15s,color .15s,opacity .15s;display:inline-flex}.recipe-detail-page-module__DZCgFa__servingStepButton:hover:not(:disabled){background:var(--color-accent);color:#fff}.recipe-detail-page-module__DZCgFa__servingStepButton:disabled{opacity:.4;cursor:not-allowed}.recipe-detail-page-module__DZCgFa__servingInput{width:2.75rem;height:2.5rem;color:var(--color-text);font-family:var(--font-body);text-align:center;appearance:textfield;background:0 0;border:none;font-size:.95rem;font-weight:700}.recipe-detail-page-module__DZCgFa__servingInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.recipe-detail-page-module__DZCgFa__servingInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.recipe-detail-page-module__DZCgFa__servingInput:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;border-radius:var(--radius-sm)}.recipe-detail-page-module__DZCgFa__servingsNote{margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-3);color:var(--color-text-soft);background:var(--color-surface-soft);border-radius:var(--radius-sm);flex-shrink:0;font-size:.8125rem;line-height:1.4}.recipe-detail-page-module__DZCgFa__ingredientsList{min-height:0;padding:0;padding-right:var(--space-1);scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;flex-direction:column;flex:auto;margin:0;list-style:none;display:flex;overflow-y:auto}.recipe-detail-page-module__DZCgFa__ingredientItem{border-bottom:1px dashed var(--color-border);padding:.55rem 0}.recipe-detail-page-module__DZCgFa__ingredientItem:last-child{border-bottom:none}.recipe-detail-page-module__DZCgFa__ingredientCategory{text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);margin:var(--space-3) 0 var(--space-2);font-size:.75rem;font-weight:700}.recipe-detail-page-module__DZCgFa__ingredientItem:first-child .recipe-detail-page-module__DZCgFa__ingredientCategory{margin-top:0}.recipe-detail-page-module__DZCgFa__ingredientRow{align-items:center;gap:var(--space-2);display:flex}.recipe-detail-page-module__DZCgFa__ingredientIcon{background:var(--color-surface-soft);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:1.85rem;height:1.85rem;font-size:1.15rem;display:inline-flex}.recipe-detail-page-module__DZCgFa__ingredientName{color:var(--color-text);flex:1;font-size:.9375rem;font-weight:500;line-height:1.35}.recipe-detail-page-module__DZCgFa__ingredientQuantity{color:var(--color-text);white-space:nowrap;background:var(--color-surface-soft);border-radius:var(--radius-sm);padding:.2rem .55rem;font-size:.875rem;font-weight:700}.recipe-detail-page-module__DZCgFa__ingredientDetails{margin-top:var(--space-1);margin-left:calc(var(--space-2) + 1.85rem);gap:var(--space-1);color:var(--color-text-soft);padding-left:var(--space-2);border-left:2px solid var(--color-border);flex-direction:column;font-size:.8125rem;display:flex}.recipe-detail-page-module__DZCgFa__ingredientNotes{font-size:.75rem;line-height:1.45}.recipe-detail-page-module__DZCgFa__ingredientNutrition{margin-top:var(--space-2);margin-left:calc(var(--space-2) + 1.85rem);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);overflow:hidden}.recipe-detail-page-module__DZCgFa__ingredientNutritionSummary{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-text);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast);padding:.45rem .6rem;font-size:.75rem;font-weight:700;list-style:none;display:flex}.recipe-detail-page-module__DZCgFa__ingredientNutritionSummary::-webkit-details-marker{display:none}.recipe-detail-page-module__DZCgFa__ingredientNutritionSummary:after{content:"+";background:var(--color-surface);width:1.25rem;height:1.25rem;color:var(--color-text-soft);transition:transform var(--motion-fast), color var(--motion-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;line-height:1;display:inline-flex}.recipe-detail-page-module__DZCgFa__ingredientNutrition[open] .recipe-detail-page-module__DZCgFa__ingredientNutritionSummary{background:color-mix(in srgb, var(--color-accent) 8%, var(--color-surface-soft))}.recipe-detail-page-module__DZCgFa__ingredientNutrition[open] .recipe-detail-page-module__DZCgFa__ingredientNutritionSummary:after{content:"-";color:var(--color-accent);transform:rotate(180deg)}.recipe-detail-page-module__DZCgFa__ingredientNutritionSummary:hover,.recipe-detail-page-module__DZCgFa__ingredientNutritionSummary:focus-visible{background:color-mix(in srgb, var(--color-accent) 10%, var(--color-surface-soft));outline:none}.recipe-detail-page-module__DZCgFa__ingredientNutritionList{background:var(--color-border);border-top:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;display:grid}.recipe-detail-page-module__DZCgFa__ingredientNutritionItem{background:var(--color-surface);min-width:0;padding:.55rem .45rem}.recipe-detail-page-module__DZCgFa__ingredientNutritionItem dt{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .15rem;font-size:.625rem;font-weight:700}.recipe-detail-page-module__DZCgFa__ingredientNutritionItem dd{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:.8rem;font-weight:800;line-height:1.2}.recipe-detail-page-module__DZCgFa__mainContent{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.recipe-detail-page-module__DZCgFa__section{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.recipe-detail-page-module__DZCgFa__stepsSection{flex-direction:column;min-height:0;display:flex;overflow:hidden}.recipe-detail-page-module__DZCgFa__sectionTitle{font-family:var(--font-display);margin:0 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);letter-spacing:-.01em;flex-shrink:0;font-size:1.5rem;font-weight:700}.recipe-detail-page-module__DZCgFa__stepsList{padding:0 var(--space-1) 0 0;gap:var(--space-3);scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;flex-direction:column;flex:auto;min-height:0;margin:0;list-style:none;display:flex;position:relative;overflow-y:auto}.recipe-detail-page-module__DZCgFa__stepItem{padding:var(--space-4);padding-left:calc(var(--space-4) + 2.5rem);background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);position:relative}.recipe-detail-page-module__DZCgFa__stepItem:hover{border-color:color-mix(in srgb, var(--color-accent) 35%, var(--color-border));box-shadow:var(--shadow-soft);transform:translateY(-1px)}.recipe-detail-page-module__DZCgFa__stepHeader{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.recipe-detail-page-module__DZCgFa__stepNumber{top:var(--space-4);left:var(--space-4);background:var(--color-accent);color:#fff;width:2rem;height:2rem;box-shadow:0 4px 12px color-mix(in srgb, var(--color-accent) 35%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;display:inline-flex;position:absolute}.recipe-detail-page-module__DZCgFa__stepTitle{font-family:var(--font-display);letter-spacing:-.005em;margin:0;font-size:1.0625rem;font-weight:700}.recipe-detail-page-module__DZCgFa__stepImage{margin:0 0 var(--space-3);border-radius:var(--radius-md);aspect-ratio:16/9;background:var(--color-surface);position:relative;overflow:hidden}.recipe-detail-page-module__DZCgFa__stepImage img{object-fit:cover;width:100%;height:100%;display:block}.recipe-detail-page-module__DZCgFa__stepInstruction{margin:0 0 var(--space-3);color:var(--color-text);font-size:.9375rem;line-height:1.65}.recipe-detail-page-module__DZCgFa__stepMeta{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.recipe-detail-page-module__DZCgFa__stepMeta:last-child{margin-bottom:0}.recipe-detail-page-module__DZCgFa__stepMetaItem{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-soft);align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.8125rem;font-weight:600;display:inline-flex}.recipe-detail-page-module__DZCgFa__stepNotes{margin:var(--space-2) 0 0;padding:var(--space-3);background:color-mix(in srgb, var(--color-accent) 6%, var(--color-surface));border-left:3px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--color-text);font-size:.875rem;line-height:1.55}.recipe-detail-page-module__DZCgFa__commentsSection{gap:var(--space-3);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__commentsHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-2);display:flex}.recipe-detail-page-module__DZCgFa__commentsHeader .recipe-detail-page-module__DZCgFa__sectionTitle{border:0;margin:0;padding:0}.recipe-detail-page-module__DZCgFa__commentsSubtitle{max-width:620px;margin:var(--space-1) 0 0;color:var(--color-text-soft);font-size:.875rem;line-height:1.55}.recipe-detail-page-module__DZCgFa__commentsCount{min-width:42px;height:32px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:inline-flex}.recipe-detail-page-module__DZCgFa__commentsAuthCard,.recipe-detail-page-module__DZCgFa__commentsEmpty,.recipe-detail-page-module__DZCgFa__commentsStatus{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);display:flex}.recipe-detail-page-module__DZCgFa__commentsStatus,.recipe-detail-page-module__DZCgFa__commentsEmpty{text-align:center;flex-direction:column;justify-content:center}.recipe-detail-page-module__DZCgFa__commentsAuthTitle{color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.recipe-detail-page-module__DZCgFa__commentsAuthText{margin:var(--space-1) 0 0;color:var(--color-text-soft);font-size:.875rem;line-height:1.5}.recipe-detail-page-module__DZCgFa__commentComposer{gap:var(--space-2);padding:var(--space-3);background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__commentTextarea{resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;min-height:96px;color:var(--color-text);padding:var(--space-3);font:inherit;transition:border-color var(--motion-fast), box-shadow var(--motion-fast);font-size:.9375rem;line-height:1.55}.recipe-detail-page-module__DZCgFa__commentTextarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 22%, transparent);outline:none}.recipe-detail-page-module__DZCgFa__commentTextarea:disabled{cursor:not-allowed;opacity:.68}.recipe-detail-page-module__DZCgFa__commentComposerFooter{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;display:flex}.recipe-detail-page-module__DZCgFa__commentComposerActions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.recipe-detail-page-module__DZCgFa__commentComposerCounter{color:var(--color-text-soft);font-size:.8125rem;font-weight:600}.recipe-detail-page-module__DZCgFa__commentPrimaryButton,.recipe-detail-page-module__DZCgFa__commentSecondaryButton,.recipe-detail-page-module__DZCgFa__commentActionButton,.recipe-detail-page-module__DZCgFa__commentLoadMoreButton,.recipe-detail-page-module__DZCgFa__commentLoadRepliesButton{border:1px solid var(--color-border);border-radius:var(--radius-pill);font:inherit;cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);font-weight:700}.recipe-detail-page-module__DZCgFa__commentPrimaryButton{border-color:var(--color-accent);background:var(--color-accent);color:#fff;padding:.55rem 1.1rem;font-size:.9375rem}.recipe-detail-page-module__DZCgFa__commentPrimaryButton:hover:not(:disabled){background:var(--color-accent-dark);border-color:var(--color-accent-dark);box-shadow:0 4px 12px color-mix(in srgb, var(--color-accent) 35%, transparent);transform:translateY(-1px)}.recipe-detail-page-module__DZCgFa__commentSecondaryButton,.recipe-detail-page-module__DZCgFa__commentActionButton,.recipe-detail-page-module__DZCgFa__commentLoadMoreButton,.recipe-detail-page-module__DZCgFa__commentLoadRepliesButton{background:var(--color-surface);color:var(--color-text)}.recipe-detail-page-module__DZCgFa__commentSecondaryButton{padding:.55rem 1.1rem;font-size:.9375rem}.recipe-detail-page-module__DZCgFa__commentActionButton{padding:.3rem .75rem;font-size:.8125rem}.recipe-detail-page-module__DZCgFa__commentSecondaryButton:hover:not(:disabled),.recipe-detail-page-module__DZCgFa__commentActionButton:hover:not(:disabled),.recipe-detail-page-module__DZCgFa__commentLoadMoreButton:hover:not(:disabled),.recipe-detail-page-module__DZCgFa__commentLoadRepliesButton:hover:not(:disabled){background:var(--color-surface-strong);border-color:var(--color-border-strong);transform:translateY(-1px)}.recipe-detail-page-module__DZCgFa__commentPrimaryButton:disabled,.recipe-detail-page-module__DZCgFa__commentSecondaryButton:disabled,.recipe-detail-page-module__DZCgFa__commentActionButton:disabled,.recipe-detail-page-module__DZCgFa__commentLoadMoreButton:disabled,.recipe-detail-page-module__DZCgFa__commentLoadRepliesButton:disabled{cursor:not-allowed;opacity:.55;transform:none}.recipe-detail-page-module__DZCgFa__commentDangerButton{border-color:color-mix(in srgb, #c62828 30%, var(--color-border));color:#b42318}.recipe-detail-page-module__DZCgFa__commentDangerButton:hover:not(:disabled){background:color-mix(in srgb, #c62828 10%, var(--color-surface));border-color:#c62828}.recipe-detail-page-module__DZCgFa__commentError{color:#b42318;margin:0;font-size:.875rem;line-height:1.45}.recipe-detail-page-module__DZCgFa__commentsList,.recipe-detail-page-module__DZCgFa__repliesList{margin:0;padding:0;list-style:none}.recipe-detail-page-module__DZCgFa__commentsList{gap:var(--space-3);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__repliesList{gap:var(--space-2);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__commentItem{margin:0}.recipe-detail-page-module__DZCgFa__commentCard{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);transition:border-color var(--motion-fast);grid-template-columns:42px 1fr;display:grid}.recipe-detail-page-module__DZCgFa__commentCard:hover{border-color:var(--color-border-strong)}.recipe-detail-page-module__DZCgFa__commentItemReply .recipe-detail-page-module__DZCgFa__commentCard{background:var(--color-surface);grid-template-columns:36px 1fr}.recipe-detail-page-module__DZCgFa__commentAvatar{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));color:#fff;width:42px;height:42px;box-shadow:0 2px 6px color-mix(in srgb, var(--color-accent) 28%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9375rem;font-weight:800;display:inline-flex}.recipe-detail-page-module__DZCgFa__commentItemReply .recipe-detail-page-module__DZCgFa__commentAvatar{width:36px;height:36px;font-size:.8125rem}.recipe-detail-page-module__DZCgFa__commentBody{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.recipe-detail-page-module__DZCgFa__commentMeta{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.recipe-detail-page-module__DZCgFa__commentAuthorBlock{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.recipe-detail-page-module__DZCgFa__commentAuthor{color:var(--color-text);font-size:.9375rem}.recipe-detail-page-module__DZCgFa__commentDate,.recipe-detail-page-module__DZCgFa__commentEdited,.recipe-detail-page-module__DZCgFa__commentRepliesCount{color:var(--color-text-soft);font-size:.8125rem}.recipe-detail-page-module__DZCgFa__commentEdited{font-style:italic}.recipe-detail-page-module__DZCgFa__commentText{color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.9375rem;line-height:1.6}.recipe-detail-page-module__DZCgFa__commentFooter{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.recipe-detail-page-module__DZCgFa__commentActions{align-items:center;gap:var(--space-2);display:flex}.recipe-detail-page-module__DZCgFa__repliesBlock{gap:var(--space-2);margin-top:var(--space-1);padding-left:var(--space-3);border-left:2px solid var(--color-border);flex-direction:column;display:flex}.recipe-detail-page-module__DZCgFa__commentLoadMoreButton{width:fit-content;margin-top:var(--space-2);align-self:center;padding:.55rem 1.1rem}.recipe-detail-page-module__DZCgFa__commentLoadRepliesButton{width:fit-content;padding:.4rem .85rem;font-size:.8125rem}.recipe-detail-page-module__DZCgFa__modalDescription{color:var(--color-text-soft);margin:0;font-size:1rem;line-height:1.6}.recipe-detail-page-module__DZCgFa__ratingModalCard{width:min(100%,480px)}.recipe-detail-page-module__DZCgFa__ratingModalStars{padding:var(--space-2) 0 var(--space-1);grid-template-columns:repeat(5,56px);justify-content:center;gap:.65rem;display:grid}.recipe-detail-page-module__DZCgFa__ratingStarButton{width:32px;height:32px;color:color-mix(in srgb, #ffb51b 22%, var(--color-text-soft));cursor:pointer;transition:color var(--motion-fast), filter var(--motion-fast), transform var(--motion-fast);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.recipe-detail-page-module__DZCgFa__ratingStarButton:hover,.recipe-detail-page-module__DZCgFa__ratingStarButton:focus-visible{color:#ffb51b;filter:saturate(1.08);outline:none;transform:translateY(-1px)scale(1.04)}.recipe-detail-page-module__DZCgFa__ratingStarButtonActive{color:#ffb51b}.recipe-detail-page-module__DZCgFa__ratingStarButtonSelected{color:#ffb51b;filter:saturate(1.12)drop-shadow(0 2px 3px #63440029)}.recipe-detail-page-module__DZCgFa__ratingStarButton:disabled{cursor:not-allowed;opacity:.7;transform:none}.recipe-detail-page-module__DZCgFa__ratingModalStarButton{width:56px;height:56px}.recipe-detail-page-module__DZCgFa__ratingModalStarIcon{filter:drop-shadow(0 2px 2px #63440024);width:52px;height:52px;display:block}.recipe-detail-page-module__DZCgFa__ratingDistribution{padding:var(--space-2) 0 0;gap:.45rem;display:grid}.recipe-detail-page-module__DZCgFa__ratingDistributionRow{color:var(--color-text-soft);grid-template-columns:1.25rem 1fr 2rem;align-items:center;gap:.65rem;font-size:.8125rem;font-weight:700;display:grid}.recipe-detail-page-module__DZCgFa__ratingDistributionLabel{color:var(--color-text);text-align:right}.recipe-detail-page-module__DZCgFa__ratingDistributionTrack{border-radius:var(--radius-pill);background:var(--color-surface-soft);height:.45rem;overflow:hidden}.recipe-detail-page-module__DZCgFa__ratingDistributionFill{border-radius:inherit;height:100%;transition:width var(--motion-base);background:linear-gradient(90deg,#ffb51b,#ff8a3d)}.recipe-detail-page-module__DZCgFa__ratingDistributionCount{text-align:right}.recipe-detail-page-module__DZCgFa__authorCard{gap:var(--space-2);padding:var(--space-3);-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);border-radius:var(--radius-md);color:#fff;background:#0c121e73;border:1px solid #ffffff2e;flex-direction:column;min-width:240px;display:flex}.recipe-detail-page-module__DZCgFa__heroCard .recipe-detail-page-module__DZCgFa__authorCard{margin-top:var(--space-2)}.recipe-detail-page-module__DZCgFa__authorCardLabel{color:#ffffffbf;text-transform:uppercase;letter-spacing:.08em;font-size:.6875rem;font-weight:600}.recipe-detail-page-module__DZCgFa__authorCardBody{align-items:center;gap:var(--space-2);display:flex}.recipe-detail-page-module__DZCgFa__authorAvatar{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-dark));color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:2.4rem;height:2.4rem;font-size:.8125rem;font-weight:800;display:grid;box-shadow:0 2px 8px #0000004d}.recipe-detail-page-module__DZCgFa__authorInfo{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.recipe-detail-page-module__DZCgFa__authorCardName{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:700;text-decoration:none;overflow:hidden}.recipe-detail-page-module__DZCgFa__authorCardName:hover{color:var(--color-accent);text-decoration:underline}.recipe-detail-page-module__DZCgFa__authorFollowers{color:#ffffffb8;font-size:.75rem}.recipe-detail-page-module__DZCgFa__authorSubscribeButton{border-radius:var(--radius-pill);cursor:pointer;border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;transition:background var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast);flex-shrink:0;padding:.4rem .9rem;font-size:.8125rem;font-weight:700}.recipe-detail-page-module__DZCgFa__authorSubscribeButton:hover:not(:disabled){background:var(--color-accent-dark);border-color:var(--color-accent-dark);transform:translateY(-1px)}.recipe-detail-page-module__DZCgFa__authorSubscribeButtonActive{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.recipe-detail-page-module__DZCgFa__authorSubscribeButtonActive:hover:not(:disabled){color:#fff;background:#c6282840;border-color:#c62828}.recipe-detail-page-module__DZCgFa__authorSubscribeButton:disabled{opacity:.6;cursor:not-allowed}.recipe-detail-page-module__DZCgFa__authorSubscribeError{color:#ffb4b4;margin:0;font-size:.75rem}.recipe-detail-page-module__DZCgFa__loader,.recipe-detail-page-module__DZCgFa__error{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;min-height:400px;display:flex}.recipe-detail-page-module__DZCgFa__spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite recipe-detail-page-module__DZCgFa__spin}@keyframes recipe-detail-page-module__DZCgFa__spin{to{transform:rotate(360deg)}}.recipe-detail-page-module__DZCgFa__loader p,.recipe-detail-page-module__DZCgFa__error p{color:var(--color-text);margin:0;font-size:1.0625rem}.recipe-detail-page-module__DZCgFa__errorDetails{color:var(--color-text-soft);max-width:420px;font-size:.875rem}.recipe-detail-page-module__DZCgFa__mobileNav{display:none}.recipe-detail-page-module__DZCgFa__mobileNavItem{border-radius:var(--radius-pill);color:var(--color-text-soft);cursor:pointer;font:inherit;min-width:44px;min-height:44px;transition:background var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);background:0 0;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .75rem;display:inline-flex}.recipe-detail-page-module__DZCgFa__mobileNavItem:hover{color:var(--color-text);background:var(--color-surface-soft)}.recipe-detail-page-module__DZCgFa__mobileNavItemActive{background:color-mix(in srgb, var(--color-accent) 14%, var(--color-surface));color:var(--color-accent)}.recipe-detail-page-module__DZCgFa__mobileNavItemActive:hover{background:color-mix(in srgb, var(--color-accent) 22%, var(--color-surface))}.recipe-detail-page-module__DZCgFa__mobileNavIcon{flex-shrink:0;width:1.3rem;height:1.3rem}.recipe-detail-page-module__DZCgFa__mobileNavLabel{opacity:0;white-space:nowrap;max-width:0;font-size:.8125rem;font-weight:700;transition:max-width .25s,opacity .2s;overflow:hidden}.recipe-detail-page-module__DZCgFa__mobileNavItemActive .recipe-detail-page-module__DZCgFa__mobileNavLabel{opacity:1;max-width:120px}@media (max-width:1024px){.recipe-detail-page-module__DZCgFa__mainLayout{gap:var(--space-4);grid-template-columns:300px 1fr}.recipe-detail-page-module__DZCgFa__hero{aspect-ratio:16/10}}@media (max-width:860px){.recipe-detail-page-module__DZCgFa__page{padding:var(--space-3) var(--space-3) calc(var(--space-5) + 76px + env(safe-area-inset-bottom))}.recipe-detail-page-module__DZCgFa__mobileNav{z-index:50;background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom));justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000014}.recipe-detail-page-module__DZCgFa__mainLayout{gap:var(--space-3);grid-template-columns:1fr;align-items:start;height:auto;min-height:0}.recipe-detail-page-module__DZCgFa__ingredientsSidebar{order:-1;max-height:none;position:static;overflow:visible}.recipe-detail-page-module__DZCgFa__ingredientsList,.recipe-detail-page-module__DZCgFa__stepsList{flex:initial;padding-right:0;overflow:visible}.recipe-detail-page-module__DZCgFa__stepsSection{overflow:visible}.recipe-detail-page-module__DZCgFa__hero{aspect-ratio:4/5}.recipe-detail-page-module__DZCgFa__heroTopBar{top:var(--space-2);left:var(--space-2);right:var(--space-2);flex-direction:column;align-items:stretch}.recipe-detail-page-module__DZCgFa__ratingControl{max-width:none}.recipe-detail-page-module__DZCgFa__ratingBadge{align-self:flex-start}.recipe-detail-page-module__DZCgFa__heroActionsBlock{align-items:flex-start}.recipe-detail-page-module__DZCgFa__heroActions{align-self:flex-start}.recipe-detail-page-module__DZCgFa__heroOverlay,.recipe-detail-page-module__DZCgFa__section{padding:var(--space-3)}.recipe-detail-page-module__DZCgFa__stepItem{padding:var(--space-3);padding-left:calc(var(--space-3) + 2.2rem)}.recipe-detail-page-module__DZCgFa__stepNumber{top:var(--space-3);left:var(--space-3);width:1.75rem;height:1.75rem;font-size:.875rem}.recipe-detail-page-module__DZCgFa__commentsHeader{flex-direction:column;align-items:stretch}.recipe-detail-page-module__DZCgFa__commentsCount{align-self:flex-start}.recipe-detail-page-module__DZCgFa__commentActions{flex-wrap:wrap}.recipe-detail-page-module__DZCgFa__commentCard{gap:var(--space-2);grid-template-columns:38px 1fr}.recipe-detail-page-module__DZCgFa__commentAvatar{width:38px;height:38px;font-size:.875rem}.recipe-detail-page-module__DZCgFa__repliesBlock{padding-left:var(--space-2)}}@media (max-width:560px){.recipe-detail-page-module__DZCgFa__hero{aspect-ratio:3/4;border-radius:var(--radius-md)}.recipe-detail-page-module__DZCgFa__ingredientsHeader{justify-content:flex-start}.recipe-detail-page-module__DZCgFa__servingControl{align-items:flex-start}.recipe-detail-page-module__DZCgFa__heroTitle{font-size:1.375rem}.recipe-detail-page-module__DZCgFa__heroDescription{font-size:.875rem}.recipe-detail-page-module__DZCgFa__heroActions{--recipe-action-size:44px;--recipe-action-glyph:24px;gap:.3rem;padding:.25rem}.recipe-detail-page-module__DZCgFa__likeButton{width:auto;padding:0 .75rem}.recipe-detail-page-module__DZCgFa__shareIcon{width:19px;height:19px}.recipe-detail-page-module__DZCgFa__bookmarkIcon{width:18px;height:20px}.recipe-detail-page-module__DZCgFa__cartIcon{width:20px;height:19px}.recipe-detail-page-module__DZCgFa__heartIcon{width:19px;height:19px}.recipe-detail-page-module__DZCgFa__ratingBadgeCta,.recipe-detail-page-module__DZCgFa__ratingCount{display:none}.recipe-detail-page-module__DZCgFa__ratingModalStars{grid-template-columns:repeat(5,44px);gap:.4rem}.recipe-detail-page-module__DZCgFa__ratingModalStarButton{width:44px;height:44px}.recipe-detail-page-module__DZCgFa__ratingModalStarIcon{width:40px;height:40px}.recipe-detail-page-module__DZCgFa__metaBadgesContainer{padding:var(--space-2);gap:var(--space-2);grid-template-columns:1fr 1fr}.recipe-detail-page-module__DZCgFa__metaBadge{padding:var(--space-2);gap:var(--space-2)}.recipe-detail-page-module__DZCgFa__metaBadgeIcon{width:1.85rem;height:1.85rem;font-size:1.05rem}.recipe-detail-page-module__DZCgFa__metaBadgeLabel{font-size:.625rem}.recipe-detail-page-module__DZCgFa__metaBadgeValue{font-size:.8125rem}.recipe-detail-page-module__DZCgFa__ingredientsSidebar{padding:var(--space-3)}.recipe-detail-page-module__DZCgFa__ingredientNutrition,.recipe-detail-page-module__DZCgFa__ingredientDetails{margin-left:0}.recipe-detail-page-module__DZCgFa__ingredientNutritionList{grid-template-columns:1fr}.recipe-detail-page-module__DZCgFa__commentComposerActions{justify-content:flex-end;width:100%;margin-left:0}.recipe-detail-page-module__DZCgFa__commentCard,.recipe-detail-page-module__DZCgFa__commentItemReply .recipe-detail-page-module__DZCgFa__commentCard{padding:var(--space-2);grid-template-columns:36px 1fr}.recipe-detail-page-module__DZCgFa__commentAvatar,.recipe-detail-page-module__DZCgFa__commentItemReply .recipe-detail-page-module__DZCgFa__commentAvatar{width:36px;height:36px;font-size:.8125rem}.recipe-detail-page-module__DZCgFa__stepItem{padding:var(--space-3);padding-left:var(--space-3)}.recipe-detail-page-module__DZCgFa__stepNumber{margin-bottom:var(--space-2);position:static}.recipe-detail-page-module__DZCgFa__stepHeader{flex-wrap:wrap}}@media (max-width:400px){.recipe-detail-page-module__DZCgFa__metaBadgesContainer{grid-template-columns:1fr}.recipe-detail-page-module__DZCgFa__authorCard{min-width:0}}
.recipe-edit-page-module__0zyfTW__page{max-width:980px;padding:var(--space-4) 0 var(--space-5);margin:0 auto}.recipe-edit-page-module__0zyfTW__card{gap:var(--space-4);padding:var(--space-4);display:grid}.recipe-edit-page-module__0zyfTW__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.recipe-edit-page-module__0zyfTW__title{font-family:var(--font-display);margin:0;font-size:clamp(1.4rem,3.4vw,2rem)}.recipe-edit-page-module__0zyfTW__subtitle{margin:var(--space-1) 0 0;color:var(--color-text-soft)}.recipe-edit-page-module__0zyfTW__form{gap:var(--space-4);display:grid}.recipe-edit-page-module__0zyfTW__section{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-soft);display:grid}.recipe-edit-page-module__0zyfTW__sectionHeader{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.recipe-edit-page-module__0zyfTW__sectionTitle{margin:0;font-size:1.12rem;font-weight:700}.recipe-edit-page-module__0zyfTW__fieldsGrid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.recipe-edit-page-module__0zyfTW__field,.recipe-edit-page-module__0zyfTW__fieldWide{gap:.42rem;display:grid}.recipe-edit-page-module__0zyfTW__fieldWide{grid-column:1/-1}.recipe-edit-page-module__0zyfTW__field span,.recipe-edit-page-module__0zyfTW__fieldWide span{color:var(--color-text-soft);font-size:.84rem;font-weight:600}.recipe-edit-page-module__0zyfTW__field input,.recipe-edit-page-module__0zyfTW__field select,.recipe-edit-page-module__0zyfTW__fieldWide input,.recipe-edit-page-module__0zyfTW__fieldWide select,.recipe-edit-page-module__0zyfTW__fieldWide textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;padding:.64rem .74rem}.recipe-edit-page-module__0zyfTW__fieldWide textarea{resize:vertical;min-height:7rem}.recipe-edit-page-module__0zyfTW__primaryButton,.recipe-edit-page-module__0zyfTW__secondaryButton,.recipe-edit-page-module__0zyfTW__dangerButton{border-radius:var(--radius-pill);font:inherit;cursor:pointer;transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);border:1px solid #0000;padding:.58rem .94rem;font-weight:600}.recipe-edit-page-module__0zyfTW__primaryButton{background:var(--color-accent);color:#fff}.recipe-edit-page-module__0zyfTW__secondaryButton{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.recipe-edit-page-module__0zyfTW__dangerButton{background:color-mix(in srgb, #ef4444 10%, var(--color-surface));color:color-mix(in srgb, #b42318 82%, var(--color-text));border-color:color-mix(in srgb, #ef4444 26%, var(--color-border))}.recipe-edit-page-module__0zyfTW__primaryButton:disabled,.recipe-edit-page-module__0zyfTW__secondaryButton:disabled,.recipe-edit-page-module__0zyfTW__dangerButton:disabled{opacity:.56;cursor:not-allowed}.recipe-edit-page-module__0zyfTW__primaryButton:hover:not(:disabled),.recipe-edit-page-module__0zyfTW__secondaryButton:hover:not(:disabled),.recipe-edit-page-module__0zyfTW__dangerButton:hover:not(:disabled){transform:translateY(-1px)}.recipe-edit-page-module__0zyfTW__primaryButton:focus-visible,.recipe-edit-page-module__0zyfTW__secondaryButton:focus-visible,.recipe-edit-page-module__0zyfTW__dangerButton:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 24%, transparent);outline:none}.recipe-edit-page-module__0zyfTW__secondaryButton:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-soft)}.recipe-edit-page-module__0zyfTW__dangerButton:hover:not(:disabled){background:color-mix(in srgb, #ef4444 14%, var(--color-surface));border-color:color-mix(in srgb, #ef4444 34%, var(--color-border))}.recipe-edit-page-module__0zyfTW__dangerButton:focus-visible{box-shadow:0 0 0 3px #ef44443d}.recipe-edit-page-module__0zyfTW__actionsRow{gap:var(--space-2);flex-wrap:wrap;display:flex}.recipe-edit-page-module__0zyfTW__list{gap:var(--space-3);display:grid}.recipe-edit-page-module__0zyfTW__listItem{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.recipe-edit-page-module__0zyfTW__stepTitle{margin:0;font-size:1rem;font-weight:700}.recipe-edit-page-module__0zyfTW__mainPhoto,.recipe-edit-page-module__0zyfTW__stepPhoto{border-radius:var(--radius-md);border:1px solid var(--color-border);object-fit:cover;width:100%;max-width:420px}.recipe-edit-page-module__0zyfTW__stepPhoto{max-width:320px}.recipe-edit-page-module__0zyfTW__photoControls{gap:var(--space-2);display:grid}.recipe-edit-page-module__0zyfTW__fileLabel{gap:.5rem;width:100%;max-width:min(100%,420px);display:grid}.recipe-edit-page-module__0zyfTW__fileLabelTitle{color:var(--color-text-soft);font-size:.84rem;font-weight:600}.recipe-edit-page-module__0zyfTW__fileInput{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.recipe-edit-page-module__0zyfTW__fileInputControl{border-radius:var(--radius-pill);background:linear-gradient(180deg, #ff7a4514, #ff7a4508), var(--color-surface);min-height:3rem;transition:border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast);border:1.5px solid #ff7a4573;align-items:center;gap:.75rem;padding:.45rem .8rem;display:flex;position:relative;overflow:hidden}.recipe-edit-page-module__0zyfTW__fileInputControl:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #ff7a4524}.recipe-edit-page-module__0zyfTW__fileInputButton{background:var(--color-accent);color:#fff;white-space:nowrap;border-radius:999px;flex-shrink:0;min-height:2rem;padding:0 .95rem;font-size:.82rem;font-weight:700;line-height:2rem;box-shadow:0 8px 16px #ff7a453d}.recipe-edit-page-module__0zyfTW__fileInputName{min-width:0;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.98rem;overflow:hidden}.recipe-edit-page-module__0zyfTW__uploadDropzone{transition:border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast);background:#ff7a450a;border:1px dashed #ff7a4561;border-radius:.95rem;gap:.45rem;padding:.56rem;display:grid;overflow:hidden}.recipe-edit-page-module__0zyfTW__uploadDropzoneActive{border-color:var(--color-accent);background:#ff7a451f;box-shadow:0 0 0 3px #ff7a451f}.recipe-edit-page-module__0zyfTW__dropzoneHint{color:var(--color-text-soft);text-align:center;margin:0;font-size:.8rem}.recipe-edit-page-module__0zyfTW__hint{color:var(--color-text-soft);margin:0;font-size:.9rem}.recipe-edit-page-module__0zyfTW__loaderBlock,.recipe-edit-page-module__0zyfTW__errorBlock{text-align:center;min-height:220px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);place-items:center;display:grid}.recipe-edit-page-module__0zyfTW__errorBlock,.recipe-edit-page-module__0zyfTW__errorText{color:#b42318}.recipe-edit-page-module__0zyfTW__errorText{margin:0;font-weight:500}.recipe-edit-page-module__0zyfTW__modalOverlay{padding:var(--space-3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0006;justify-content:center;align-items:center;animation:.2s ease-out recipe-edit-page-module__0zyfTW__fadeIn;display:flex;position:fixed;inset:0}@keyframes recipe-edit-page-module__0zyfTW__fadeIn{0%{opacity:0}to{opacity:1}}.recipe-edit-page-module__0zyfTW__modalCard{gap:var(--space-3);background:var(--color-surface);border-radius:1.2rem;width:min(100%,760px);max-height:min(100vh - 2.5rem,860px);margin:1rem;padding:2rem;animation:.3s ease-out recipe-edit-page-module__0zyfTW__slideUp;display:grid;overflow:auto;box-shadow:0 20px 60px #0000004d}@keyframes recipe-edit-page-module__0zyfTW__slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recipe-edit-page-module__0zyfTW__modalHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.recipe-edit-page-module__0zyfTW__modalEyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin:0 0 .35rem;font-size:.76rem;font-weight:700}.recipe-edit-page-module__0zyfTW__modalTitle{font-family:var(--font-display);margin:0;font-size:clamp(1.2rem,2.5vw,1.6rem)}.recipe-edit-page-module__0zyfTW__modalContent{gap:var(--space-3);display:grid}:root[data-theme=dark] .recipe-edit-page-module__0zyfTW__dangerButton{color:color-mix(in srgb, #ffb4ac 68%, var(--color-text));border-color:color-mix(in srgb, #ef4444 38%, var(--color-border));background:#3b2332f7}:root[data-theme=dark] .recipe-edit-page-module__0zyfTW__dangerButton:hover:not(:disabled){border-color:color-mix(in srgb, #ef4444 48%, var(--color-border-strong));background:#4c2734fb}:root[data-theme=dark] .recipe-edit-page-module__0zyfTW__fileInputControl{background:linear-gradient(#ff7a452e,#ff7a450f),#121c2ed1;border-color:#ff7a4599}:root[data-theme=dark] .recipe-edit-page-module__0zyfTW__uploadDropzone{background:#ff7a4514;border-color:#ff7a4585}:root[data-theme=dark] .recipe-edit-page-module__0zyfTW__uploadDropzoneActive{background:#ff7a452e;box-shadow:0 0 0 3px #ff7a4533}@media (max-width:900px){.recipe-edit-page-module__0zyfTW__fieldsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.recipe-edit-page-module__0zyfTW__page{padding:var(--space-3) var(--space-2) var(--space-4)}.recipe-edit-page-module__0zyfTW__card{padding:var(--space-3)}.recipe-edit-page-module__0zyfTW__header{flex-direction:column;align-items:stretch}.recipe-edit-page-module__0zyfTW__fieldsGrid{grid-template-columns:1fr}.recipe-edit-page-module__0zyfTW__modalOverlay{padding:var(--space-2)}.recipe-edit-page-module__0zyfTW__modalCard{max-height:calc(100vh - 1rem);margin:.5rem;padding:1.5rem}.recipe-edit-page-module__0zyfTW__modalHeader{flex-direction:column;align-items:stretch}}
.collection-detail-page-module__QvyLGq__page{max-width:var(--layout-content-max);padding:var(--space-5) var(--space-4) var(--space-6);gap:var(--space-5);flex-direction:column;margin:0 auto;display:flex}.collection-detail-page-module__QvyLGq__collectionHero{border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) + .35rem);background:radial-gradient(circle at 88% 12%, var(--color-ambient-3), transparent 30%), linear-gradient(135deg, var(--color-surface), var(--color-surface-soft));box-shadow:var(--shadow-soft);grid-template-columns:minmax(16rem,.82fr) minmax(0,1.18fr);align-items:stretch;gap:clamp(1rem,3vw,2rem);padding:clamp(.85rem,2vw,1.1rem);display:grid;overflow:hidden}.collection-detail-page-module__QvyLGq__heroImagePanel{border-radius:var(--radius-lg);background:radial-gradient(circle at 20% 16%, var(--color-ambient-1), transparent 34%), var(--color-bg-deep);min-height:22rem;position:relative;overflow:hidden}.collection-detail-page-module__QvyLGq__heroImage,.collection-detail-page-module__QvyLGq__heroImagePlaceholder{width:100%;height:100%;min-height:inherit}.collection-detail-page-module__QvyLGq__heroImage{object-fit:cover;display:block}.collection-detail-page-module__QvyLGq__heroImagePlaceholder{color:var(--color-text-soft);place-items:center;display:grid}.collection-detail-page-module__QvyLGq__heroPlaceholderIcon{opacity:.42;width:4.5rem;height:4.5rem}.collection-detail-page-module__QvyLGq__collectionInfo{justify-content:center;gap:var(--space-3);flex-direction:column;min-width:0;padding:clamp(.5rem,2vw,1rem);display:flex}.collection-detail-page-module__QvyLGq__backLink{width:fit-content;color:var(--color-text-soft);font-family:var(--font-body);cursor:pointer;transition:color var(--motion-fast);background:0 0;border:none;padding:0;font-size:.88rem;font-weight:700}.collection-detail-page-module__QvyLGq__backLink:hover{color:var(--color-accent-dark)}.collection-detail-page-module__QvyLGq__collectionTitleRow{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.collection-detail-page-module__QvyLGq__collectionTitle{color:var(--color-text);font-family:var(--font-display);text-wrap:balance;margin:0;font-size:clamp(2rem,5vw,3.8rem);font-weight:700;line-height:.98}.collection-detail-page-module__QvyLGq__collectionDescription,.collection-detail-page-module__QvyLGq__collectionDescriptionMuted{text-wrap:pretty;max-width:42rem;margin:0;font-size:1rem;line-height:1.58}.collection-detail-page-module__QvyLGq__collectionDescription{color:var(--color-text-soft)}.collection-detail-page-module__QvyLGq__collectionDescriptionMuted{color:color-mix(in srgb, var(--color-text-soft) 72%, transparent);font-style:italic}.collection-detail-page-module__QvyLGq__collectionStats{gap:var(--space-2);padding-top:var(--space-1);flex-wrap:wrap;display:flex}.collection-detail-page-module__QvyLGq__collectionStats span{border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:2.35rem;color:var(--color-text-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff61;align-items:baseline;gap:.35rem;padding:.45rem .75rem;font-size:.84rem;font-weight:600;display:inline-flex}:root[data-theme=dark] .collection-detail-page-module__QvyLGq__collectionStats span{background:#0a122042}.collection-detail-page-module__QvyLGq__collectionStats strong{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:1.1rem}.collection-detail-page-module__QvyLGq__updatedAt{color:var(--color-text-soft);font-size:.8rem;font-weight:700}.collection-detail-page-module__QvyLGq__badgePublic,.collection-detail-page-module__QvyLGq__badgePrivate,.collection-detail-page-module__QvyLGq__difficultyBadge{border-radius:var(--radius-sm);letter-spacing:.05em;text-transform:uppercase;align-items:center;min-height:1.7rem;padding:.35rem .55rem;font-size:.72rem;font-weight:800;display:inline-flex}.collection-detail-page-module__QvyLGq__badgePublic{color:#1a7a47;background:#26a66424;border:1px solid #26a66452}.collection-detail-page-module__QvyLGq__badgePrivate{border:1px solid var(--color-border-strong);background:var(--color-surface-soft);color:var(--color-text-soft)}.collection-detail-page-module__QvyLGq__collectionHeaderActions,.collection-detail-page-module__QvyLGq__formActions,.collection-detail-page-module__QvyLGq__coverActions,.collection-detail-page-module__QvyLGq__pagination{gap:var(--space-2);flex-wrap:wrap;display:flex}.collection-detail-page-module__QvyLGq__collectionHeaderActions{padding-top:var(--space-2)}.collection-detail-page-module__QvyLGq__primaryButton,.collection-detail-page-module__QvyLGq__editButton,.collection-detail-page-module__QvyLGq__shoppingListButton,.collection-detail-page-module__QvyLGq__cancelButton,.collection-detail-page-module__QvyLGq__removeButton,.collection-detail-page-module__QvyLGq__backButton,.collection-detail-page-module__QvyLGq__coverUploadBtn,.collection-detail-page-module__QvyLGq__coverClearBtn,.collection-detail-page-module__QvyLGq__pageButton{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-body);cursor:pointer;transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast), opacity var(--motion-fast);font-weight:700;display:inline-flex}.collection-detail-page-module__QvyLGq__primaryButton{background:var(--color-accent);color:#fff;border:1px solid #0000;min-height:2.75rem;padding:.75rem 1rem;box-shadow:0 12px 28px #ff7a453d}.collection-detail-page-module__QvyLGq__primaryButton:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px)}.collection-detail-page-module__QvyLGq__editButton,.collection-detail-page-module__QvyLGq__shoppingListButton,.collection-detail-page-module__QvyLGq__cancelButton,.collection-detail-page-module__QvyLGq__backButton,.collection-detail-page-module__QvyLGq__coverUploadBtn,.collection-detail-page-module__QvyLGq__pageButton{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:2.55rem;color:var(--color-text);padding:.65rem .9rem;font-size:.88rem}.collection-detail-page-module__QvyLGq__shoppingListButton{color:#1a7a47}.collection-detail-page-module__QvyLGq__editButton:hover:not(:disabled),.collection-detail-page-module__QvyLGq__shoppingListButton:hover:not(:disabled),.collection-detail-page-module__QvyLGq__cancelButton:hover:not(:disabled),.collection-detail-page-module__QvyLGq__backButton:hover:not(:disabled),.collection-detail-page-module__QvyLGq__coverUploadBtn:hover:not(:disabled),.collection-detail-page-module__QvyLGq__pageButton:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent-dark);background:#ff7a4514}.collection-detail-page-module__QvyLGq__removeButton,.collection-detail-page-module__QvyLGq__coverClearBtn{color:#c92f2b;background:#dc322f0a;border:1px solid #dc322f4d;min-height:2.2rem;padding:.5rem .7rem;font-size:.8rem}.collection-detail-page-module__QvyLGq__removeButton:hover:not(:disabled),.collection-detail-page-module__QvyLGq__coverClearBtn:hover:not(:disabled){background:#dc322f1a;border-color:#dc322f80}.collection-detail-page-module__QvyLGq__primaryButton:active:not(:disabled),.collection-detail-page-module__QvyLGq__editButton:active:not(:disabled),.collection-detail-page-module__QvyLGq__shoppingListButton:active:not(:disabled),.collection-detail-page-module__QvyLGq__cancelButton:active:not(:disabled),.collection-detail-page-module__QvyLGq__removeButton:active:not(:disabled),.collection-detail-page-module__QvyLGq__backButton:active:not(:disabled),.collection-detail-page-module__QvyLGq__coverUploadBtn:active:not(:disabled),.collection-detail-page-module__QvyLGq__coverClearBtn:active:not(:disabled),.collection-detail-page-module__QvyLGq__pageButton:active:not(:disabled){transform:translateY(1px)scale(.99)}.collection-detail-page-module__QvyLGq__primaryButton:disabled,.collection-detail-page-module__QvyLGq__editButton:disabled,.collection-detail-page-module__QvyLGq__shoppingListButton:disabled,.collection-detail-page-module__QvyLGq__cancelButton:disabled,.collection-detail-page-module__QvyLGq__removeButton:disabled,.collection-detail-page-module__QvyLGq__backButton:disabled,.collection-detail-page-module__QvyLGq__coverUploadBtn:disabled,.collection-detail-page-module__QvyLGq__coverClearBtn:disabled,.collection-detail-page-module__QvyLGq__pageButton:disabled{opacity:.55;cursor:not-allowed}.collection-detail-page-module__QvyLGq__primaryButton:focus-visible,.collection-detail-page-module__QvyLGq__editButton:focus-visible,.collection-detail-page-module__QvyLGq__shoppingListButton:focus-visible,.collection-detail-page-module__QvyLGq__cancelButton:focus-visible,.collection-detail-page-module__QvyLGq__removeButton:focus-visible,.collection-detail-page-module__QvyLGq__backButton:focus-visible,.collection-detail-page-module__QvyLGq__coverUploadBtn:focus-visible,.collection-detail-page-module__QvyLGq__coverClearBtn:focus-visible,.collection-detail-page-module__QvyLGq__pageButton:focus-visible,.collection-detail-page-module__QvyLGq__backLink:focus-visible,.collection-detail-page-module__QvyLGq__recipeCard:focus-visible,.collection-detail-page-module__QvyLGq__fieldInput:focus-visible,.collection-detail-page-module__QvyLGq__fieldTextarea:focus-visible{outline-offset:2px;outline:3px solid #ff7a453d}.collection-detail-page-module__QvyLGq__editForm{gap:var(--space-4);border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) + .3rem);background:radial-gradient(circle at 92% 0%, var(--color-ambient-1), transparent 28%), var(--color-surface);box-shadow:var(--shadow-soft);flex-direction:column;padding:clamp(1rem,3vw,1.5rem);display:flex}.collection-detail-page-module__QvyLGq__editFormHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.collection-detail-page-module__QvyLGq__kicker{color:var(--color-accent-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:800}.collection-detail-page-module__QvyLGq__editFormTitle,.collection-detail-page-module__QvyLGq__recipesTitle{margin:var(--space-1) 0 0;color:var(--color-text);font-family:var(--font-display);font-size:clamp(1.35rem,3vw,2rem);font-weight:700}.collection-detail-page-module__QvyLGq__editFormGrid{gap:var(--space-5);grid-template-columns:minmax(15rem,.82fr) minmax(0,1.18fr);align-items:start;display:grid}.collection-detail-page-module__QvyLGq__coverEditor,.collection-detail-page-module__QvyLGq__editFields,.collection-detail-page-module__QvyLGq__formField,.collection-detail-page-module__QvyLGq__coverUploadSection{flex-direction:column;display:flex}.collection-detail-page-module__QvyLGq__coverEditor,.collection-detail-page-module__QvyLGq__editFields,.collection-detail-page-module__QvyLGq__coverUploadSection{gap:var(--space-3)}.collection-detail-page-module__QvyLGq__formField{gap:var(--space-1)}.collection-detail-page-module__QvyLGq__fieldLabel{color:var(--color-text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:800}.collection-detail-page-module__QvyLGq__required{color:var(--color-accent-dark)}.collection-detail-page-module__QvyLGq__fieldInput,.collection-detail-page-module__QvyLGq__fieldTextarea{box-sizing:border-box;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);width:100%;color:var(--color-text);font-family:var(--font-body);transition:border-color var(--motion-fast), box-shadow var(--motion-fast), background var(--motion-fast);outline:none;font-size:.96rem}.collection-detail-page-module__QvyLGq__fieldInput{min-height:2.8rem;padding:0 var(--space-3)}.collection-detail-page-module__QvyLGq__fieldTextarea{min-height:7.4rem;padding:var(--space-3);resize:vertical}.collection-detail-page-module__QvyLGq__fieldInput:focus,.collection-detail-page-module__QvyLGq__fieldTextarea:focus{border-color:var(--color-accent);background:var(--color-surface);box-shadow:0 0 0 4px #ff7a4526}.collection-detail-page-module__QvyLGq__visibilityToggle{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;display:grid}.collection-detail-page-module__QvyLGq__visibilityToggle input{width:1.15rem;height:1.15rem;accent-color:var(--color-accent)}.collection-detail-page-module__QvyLGq__visibilityToggle span{flex-direction:column;gap:.15rem;display:flex}.collection-detail-page-module__QvyLGq__visibilityToggle small{color:var(--color-text-soft);font-size:.78rem;line-height:1.35}.collection-detail-page-module__QvyLGq__formError{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:#c92f2b;background:#dc322f1a;border:1px solid #dc322f40;margin:0;font-size:.875rem}.collection-detail-page-module__QvyLGq__coverPreviewWrap{aspect-ratio:4/5;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:radial-gradient(circle at 50% 20%, var(--color-ambient-3), transparent 35%), var(--color-surface-soft);width:100%;position:relative;overflow:hidden}.collection-detail-page-module__QvyLGq__coverPreviewImg{object-fit:cover;width:100%;height:100%;display:block}.collection-detail-page-module__QvyLGq__coverPreviewPlaceholder{justify-content:center;align-items:center;gap:var(--space-2);width:100%;height:100%;color:var(--color-text-soft);flex-direction:column;display:flex}.collection-detail-page-module__QvyLGq__coverPreviewPlaceholderIcon{opacity:.4;width:2.5rem;height:2.5rem}.collection-detail-page-module__QvyLGq__coverPreviewPlaceholderText{color:var(--color-text-soft);font-size:.82rem}.collection-detail-page-module__QvyLGq__coverInputHidden{display:none}.collection-detail-page-module__QvyLGq__coverNewBadge{color:#1a7a47;text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:.8rem;font-weight:800;overflow:hidden}.collection-detail-page-module__QvyLGq__recipesSection{gap:var(--space-3);flex-direction:column;display:flex}.collection-detail-page-module__QvyLGq__recipesHeader{justify-content:space-between;align-items:flex-end;gap:var(--space-3);display:flex}.collection-detail-page-module__QvyLGq__recipesCount,.collection-detail-page-module__QvyLGq__pageInfo{color:var(--color-text-soft);font-variant-numeric:tabular-nums;font-size:.86rem;font-weight:700}.collection-detail-page-module__QvyLGq__recipeGrid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(245px,1fr));align-items:start;display:grid}.collection-detail-page-module__QvyLGq__recipeCard{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;min-height:22rem;transition:transform var(--motion-base), box-shadow var(--motion-base), border-color var(--motion-base);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px #1a263a1a}.collection-detail-page-module__QvyLGq__recipeCard:hover{border-color:#ff7a459e;transform:translateY(-4px);box-shadow:0 20px 42px #1a263a29}.collection-detail-page-module__QvyLGq__recipeCard:hover .collection-detail-page-module__QvyLGq__recipeImage{transform:scale(1.045)}.collection-detail-page-module__QvyLGq__recipeImageWrap{aspect-ratio:4/3;background:var(--color-bg-deep);position:relative;overflow:hidden}.collection-detail-page-module__QvyLGq__recipeImage{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-base);display:block}.collection-detail-page-module__QvyLGq__recipeImagePlaceholder{background:linear-gradient(135deg, #ff7a4524, transparent 45%), var(--color-surface-strong);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.collection-detail-page-module__QvyLGq__recipePlaceholderIcon{width:2.7rem;height:2.7rem;color:var(--color-text-soft);opacity:.36}.collection-detail-page-module__QvyLGq__difficultyBadge{right:var(--space-2);bottom:var(--space-2);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a1220b3;position:absolute}.collection-detail-page-module__QvyLGq__recipeBody{gap:var(--space-2);padding:var(--space-3);flex-direction:column;flex:1;display:flex}.collection-detail-page-module__QvyLGq__recipeTitle{color:var(--color-text);-webkit-line-clamp:2;text-wrap:pretty;-webkit-box-orient:vertical;margin:0;font-size:1rem;font-weight:800;line-height:1.28;display:-webkit-box;overflow:hidden}.collection-detail-page-module__QvyLGq__recipeDescription{color:var(--color-text-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.83rem;line-height:1.45;display:-webkit-box;overflow:hidden}.collection-detail-page-module__QvyLGq__recipeMeta{gap:var(--space-2);padding-top:var(--space-1);flex-wrap:wrap;margin-top:auto;display:flex}.collection-detail-page-module__QvyLGq__metaItem{color:var(--color-text-soft);align-items:center;gap:.3rem;font-size:.78rem;font-weight:700;display:inline-flex}.collection-detail-page-module__QvyLGq__recipeCardActions{padding:0 var(--space-3) var(--space-3);justify-content:flex-end;display:flex}.collection-detail-page-module__QvyLGq__pagination{padding:var(--space-2) 0;justify-content:center;align-items:center}.collection-detail-page-module__QvyLGq__stateContainer,.collection-detail-page-module__QvyLGq__emptyState,.collection-detail-page-module__QvyLGq__accessDenied{align-items:center;gap:var(--space-3);padding:clamp(2rem, 6vw, 4rem) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);text-align:center;flex-direction:column;display:flex}.collection-detail-page-module__QvyLGq__emptyState{background:radial-gradient(circle at 50% 0%, var(--color-ambient-1), transparent 34%), var(--color-surface);border-style:dashed}.collection-detail-page-module__QvyLGq__emptyMark,.collection-detail-page-module__QvyLGq__accessDeniedIcon{color:var(--color-text-soft)}.collection-detail-page-module__QvyLGq__emptyMark{background:var(--color-surface-strong);border-radius:1.25rem;place-items:center;width:4.75rem;height:4.75rem;display:grid}.collection-detail-page-module__QvyLGq__emptyIcon{opacity:.58;width:2.7rem;height:2.7rem}.collection-detail-page-module__QvyLGq__emptyTitle,.collection-detail-page-module__QvyLGq__accessDeniedTitle{color:var(--color-text);margin:0;font-size:1.2rem;font-weight:800}.collection-detail-page-module__QvyLGq__emptySubtitle,.collection-detail-page-module__QvyLGq__accessDeniedText{max-width:28rem;color:var(--color-text-soft);text-wrap:pretty;margin:0;font-size:.92rem;line-height:1.55}.collection-detail-page-module__QvyLGq__accessDeniedIcon{opacity:.4;width:4rem;height:4rem}.collection-detail-page-module__QvyLGq__errorText{color:#c92f2b;margin:0;font-size:.95rem;line-height:1.5}.collection-detail-page-module__QvyLGq__detailSkeleton{gap:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) + .35rem);background:var(--color-surface);grid-template-columns:minmax(16rem,.82fr) minmax(0,1.18fr);display:grid}.collection-detail-page-module__QvyLGq__skeletonHeroImage,.collection-detail-page-module__QvyLGq__skeletonLineWide,.collection-detail-page-module__QvyLGq__skeletonLine,.collection-detail-page-module__QvyLGq__skeletonPills{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-surface-strong), var(--color-surface-soft), var(--color-surface-strong));background-size:220% 100%;animation:1.25s ease-in-out infinite collection-detail-page-module__QvyLGq__shimmer}.collection-detail-page-module__QvyLGq__skeletonHeroImage{border-radius:var(--radius-lg);min-height:22rem}.collection-detail-page-module__QvyLGq__skeletonHeroText{justify-content:center;gap:var(--space-3);flex-direction:column;display:flex}.collection-detail-page-module__QvyLGq__skeletonLineWide{width:76%;height:2rem}.collection-detail-page-module__QvyLGq__skeletonLine{width:58%;height:1rem}.collection-detail-page-module__QvyLGq__skeletonPills{width:42%;height:2.2rem}@keyframes collection-detail-page-module__QvyLGq__shimmer{to{background-position:-220% 0}}@media (max-width:820px){.collection-detail-page-module__QvyLGq__collectionHero,.collection-detail-page-module__QvyLGq__editFormGrid,.collection-detail-page-module__QvyLGq__detailSkeleton{grid-template-columns:1fr}.collection-detail-page-module__QvyLGq__heroImagePanel,.collection-detail-page-module__QvyLGq__skeletonHeroImage{min-height:16rem}.collection-detail-page-module__QvyLGq__coverPreviewWrap{aspect-ratio:16/9}}@media (max-width:600px){.collection-detail-page-module__QvyLGq__page{padding-inline:var(--space-3)}.collection-detail-page-module__QvyLGq__collectionHero,.collection-detail-page-module__QvyLGq__editForm{border-radius:var(--radius-lg)}.collection-detail-page-module__QvyLGq__editFormHeader,.collection-detail-page-module__QvyLGq__recipesHeader{flex-direction:column;align-items:flex-start}.collection-detail-page-module__QvyLGq__collectionHeaderActions,.collection-detail-page-module__QvyLGq__formActions,.collection-detail-page-module__QvyLGq__coverActions{flex-direction:column}.collection-detail-page-module__QvyLGq__primaryButton,.collection-detail-page-module__QvyLGq__editButton,.collection-detail-page-module__QvyLGq__shoppingListButton,.collection-detail-page-module__QvyLGq__cancelButton,.collection-detail-page-module__QvyLGq__coverUploadBtn,.collection-detail-page-module__QvyLGq__coverClearBtn,.collection-detail-page-module__QvyLGq__pageButton{width:100%}.collection-detail-page-module__QvyLGq__recipeGrid{grid-template-columns:1fr}.collection-detail-page-module__QvyLGq__pagination{gap:var(--space-2)}}
.collections-page-module__zWjO6q__page{max-width:var(--layout-content-max);padding:var(--space-5) var(--space-4) var(--space-6);gap:var(--space-5);flex-direction:column;margin:0 auto;display:flex}.collections-page-module__zWjO6q__hero{gap:var(--space-5);border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) + .35rem);background:radial-gradient(circle at 8% 12%, var(--color-ambient-1), transparent 31%), radial-gradient(circle at 92% 20%, var(--color-ambient-3), transparent 28%), linear-gradient(135deg, var(--color-surface), var(--color-surface-soft));box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,1fr) auto;align-items:end;padding:clamp(1.25rem,3vw,2rem);display:grid;position:relative;overflow:hidden}.collections-page-module__zWjO6q__hero:after{content:"";pointer-events:none;background-image:linear-gradient(#59688314 1px,#0000 1px),linear-gradient(90deg,#59688314 1px,#0000 1px);background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#000000a6,#0000 70%);mask-image:linear-gradient(120deg,#000000a6,#0000 70%)}.collections-page-module__zWjO6q__heroContent,.collections-page-module__zWjO6q__hero .collections-page-module__zWjO6q__createButton{z-index:1;position:relative}.collections-page-module__zWjO6q__heroContent{gap:var(--space-3);flex-direction:column;display:flex}.collections-page-module__zWjO6q__kicker,.collections-page-module__zWjO6q__modalKicker{color:var(--color-accent-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:700}.collections-page-module__zWjO6q__title{max-width:11ch;color:var(--color-text);font-family:var(--font-display);text-wrap:balance;margin:0;font-size:clamp(2rem,5vw,4rem);font-weight:700;line-height:.98}.collections-page-module__zWjO6q__subtitle{max-width:35rem;color:var(--color-text-soft);text-wrap:pretty;margin:0;font-size:1rem;line-height:1.55}.collections-page-module__zWjO6q__heroStats{gap:var(--space-2);padding-top:var(--space-2);flex-wrap:wrap;display:flex}.collections-page-module__zWjO6q__heroStats span{border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:2.35rem;color:var(--color-text-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff6b;align-items:baseline;gap:.35rem;padding:.45rem .7rem;font-size:.82rem;display:inline-flex}:root[data-theme=dark] .collections-page-module__zWjO6q__heroStats span{background:#0a122047}.collections-page-module__zWjO6q__heroStats strong{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:1.08rem}.collections-page-module__zWjO6q__createButton,.collections-page-module__zWjO6q__cancelButton,.collections-page-module__zWjO6q__deleteButton{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-body);cursor:pointer;transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast), opacity var(--motion-fast);font-weight:700;display:inline-flex}.collections-page-module__zWjO6q__createButton{background:var(--color-accent);color:#fff;white-space:nowrap;border:1px solid #0000;min-height:2.75rem;padding:.75rem 1rem;box-shadow:0 12px 28px #ff7a4542}.collections-page-module__zWjO6q__createButton:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px)}.collections-page-module__zWjO6q__createButton:active:not(:disabled),.collections-page-module__zWjO6q__cancelButton:active:not(:disabled),.collections-page-module__zWjO6q__deleteButton:active:not(:disabled){transform:translateY(1px)scale(.99)}.collections-page-module__zWjO6q__createButton:focus-visible,.collections-page-module__zWjO6q__cancelButton:focus-visible,.collections-page-module__zWjO6q__deleteButton:focus-visible,.collections-page-module__zWjO6q__closeButton:focus-visible,.collections-page-module__zWjO6q__card:focus-visible,.collections-page-module__zWjO6q__coverUploadLabel:focus-within,.collections-page-module__zWjO6q__fieldInput:focus-visible,.collections-page-module__zWjO6q__fieldTextarea:focus-visible{outline-offset:2px;outline:3px solid #ff7a453d}.collections-page-module__zWjO6q__createButton:disabled,.collections-page-module__zWjO6q__cancelButton:disabled,.collections-page-module__zWjO6q__deleteButton:disabled{opacity:.6;cursor:not-allowed}.collections-page-module__zWjO6q__cancelButton{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:2.6rem;color:var(--color-text-soft);padding:.7rem 1rem}.collections-page-module__zWjO6q__cancelButton:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent-dark);background:#ff7a4514}.collections-page-module__zWjO6q__deleteButton{color:#c92f2b;background:#dc322f0a;border:1px solid #dc322f4d;min-height:2.25rem;padding:.55rem .75rem;font-size:.82rem}.collections-page-module__zWjO6q__deleteButton:hover:not(:disabled){background:#dc322f1a;border-color:#dc322f80}.collections-page-module__zWjO6q__librarySection{gap:var(--space-3);flex-direction:column;display:flex}.collections-page-module__zWjO6q__sectionHeader{justify-content:space-between;align-items:end;gap:var(--space-3);display:flex}.collections-page-module__zWjO6q__sectionTitle{color:var(--color-text);margin:0;font-size:1.15rem}.collections-page-module__zWjO6q__sectionMeta{margin:var(--space-1) 0 0;color:var(--color-text-soft);font-size:.85rem}.collections-page-module__zWjO6q__grid,.collections-page-module__zWjO6q__skeletonGrid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.collections-page-module__zWjO6q__card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;min-height:22rem;transition:transform var(--motion-base), box-shadow var(--motion-base), border-color var(--motion-base);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px #1a263a1a}.collections-page-module__zWjO6q__card:hover{border-color:#ff7a459e;transform:translateY(-4px);box-shadow:0 20px 42px #1a263a29}.collections-page-module__zWjO6q__card:hover .collections-page-module__zWjO6q__cardImage{transform:scale(1.045)}.collections-page-module__zWjO6q__cardImageWrap{aspect-ratio:5/3;background:radial-gradient(circle at 25% 20%, var(--color-ambient-3), transparent 30%), var(--color-bg-deep);position:relative;overflow:hidden}.collections-page-module__zWjO6q__cardImage{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-base);display:block}.collections-page-module__zWjO6q__cardImagePlaceholder{background:linear-gradient(135deg, #ff7a4529, transparent 45%), var(--color-surface-strong);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.collections-page-module__zWjO6q__cardPlaceholderIcon{width:3.4rem;height:3.4rem;color:var(--color-text-soft);opacity:.42}.collections-page-module__zWjO6q__badgePublic,.collections-page-module__zWjO6q__badgePrivate{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-sm);color:#fff;letter-spacing:.04em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff61;padding:.35rem .55rem;font-size:.72rem;font-weight:800;position:absolute}.collections-page-module__zWjO6q__badgePublic{background:#1f844ec7}.collections-page-module__zWjO6q__badgePrivate{background:#1c273ab8}.collections-page-module__zWjO6q__cardBody{gap:var(--space-2);padding:var(--space-4);flex-direction:column;flex:1;display:flex}.collections-page-module__zWjO6q__cardTopline{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-text-soft);font-variant-numeric:tabular-nums;font-size:.76rem;font-weight:700;display:flex}.collections-page-module__zWjO6q__cardTitle{color:var(--color-text);-webkit-line-clamp:2;text-wrap:pretty;-webkit-box-orient:vertical;margin:0;font-size:1.08rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.collections-page-module__zWjO6q__cardDescription{color:var(--color-text-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.88rem;line-height:1.5;display:-webkit-box;overflow:hidden}.collections-page-module__zWjO6q__cardActions{padding:0 var(--space-4) var(--space-4);justify-content:flex-end;display:flex}.collections-page-module__zWjO6q__skeletonCard{min-height:21rem;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow:hidden}.collections-page-module__zWjO6q__skeletonImage,.collections-page-module__zWjO6q__skeletonLine,.collections-page-module__zWjO6q__skeletonLineWide{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-surface-strong), var(--color-surface-soft), var(--color-surface-strong));background-size:220% 100%;animation:1.25s ease-in-out infinite collections-page-module__zWjO6q__shimmer}.collections-page-module__zWjO6q__skeletonImage{aspect-ratio:5/3;margin-bottom:var(--space-4)}.collections-page-module__zWjO6q__skeletonLineWide{width:82%;height:1rem;margin-bottom:var(--space-2)}.collections-page-module__zWjO6q__skeletonLine{width:58%;height:.85rem}@keyframes collections-page-module__zWjO6q__shimmer{to{background-position:-220% 0}}.collections-page-module__zWjO6q__stateContainer,.collections-page-module__zWjO6q__emptyState{align-items:center;gap:var(--space-3);padding:clamp(2rem, 6vw, 4rem) var(--space-4);text-align:center;flex-direction:column;display:flex}.collections-page-module__zWjO6q__stateContainer{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.collections-page-module__zWjO6q__errorText{color:#c92f2b;margin:0;font-size:.95rem;line-height:1.5}.collections-page-module__zWjO6q__emptyState{border:1px dashed var(--color-border-strong);border-radius:calc(var(--radius-lg) + .25rem);background:radial-gradient(circle at 50% 0%, var(--color-ambient-1), transparent 35%), var(--color-surface)}.collections-page-module__zWjO6q__emptyIconWrap{background:var(--color-surface-strong);width:4.75rem;height:4.75rem;color:var(--color-text-soft);border-radius:1.25rem;place-items:center;display:grid}.collections-page-module__zWjO6q__emptyIcon{opacity:.58;width:2.8rem;height:2.8rem}.collections-page-module__zWjO6q__emptyTitle{color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700}.collections-page-module__zWjO6q__emptySubtitle{max-width:28rem;color:var(--color-text-soft);text-wrap:pretty;margin:0;font-size:.95rem;line-height:1.55}.collections-page-module__zWjO6q__overlay{z-index:100;padding:var(--space-4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a122094;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.collections-page-module__zWjO6q__confirmModal,.collections-page-module__zWjO6q__createModal{border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) + .2rem);background:color-mix(in srgb, var(--color-surface) 88%, var(--color-bg) 12%);width:100%;box-shadow:0 28px 80px #0a122052}.collections-page-module__zWjO6q__confirmModal{max-width:28rem;padding:var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.collections-page-module__zWjO6q__confirmTitle{color:var(--color-text);margin:0;font-size:1.2rem;font-weight:700}.collections-page-module__zWjO6q__confirmText{color:var(--color-text-soft);margin:0;font-size:.92rem;line-height:1.55}.collections-page-module__zWjO6q__confirmActions{gap:var(--space-3);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.collections-page-module__zWjO6q__createModal{max-width:54rem;max-height:90vh;padding:var(--space-5);overflow-y:auto}.collections-page-module__zWjO6q__createModalHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.collections-page-module__zWjO6q__createFormTitle{margin:var(--space-1) 0 0;color:var(--color-text);text-wrap:balance;font-size:clamp(1.35rem,3vw,2rem);font-weight:700;line-height:1.1}.collections-page-module__zWjO6q__closeButton{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);width:2.25rem;height:2.25rem;color:var(--color-text-soft);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);flex:none;place-items:center;display:grid}.collections-page-module__zWjO6q__closeButton:hover{background:var(--color-surface-strong);color:var(--color-text)}.collections-page-module__zWjO6q__createFormGrid{gap:var(--space-5);grid-template-columns:minmax(15rem,.85fr) minmax(0,1.15fr);align-items:start;display:grid}.collections-page-module__zWjO6q__coverColumn,.collections-page-module__zWjO6q__formColumn,.collections-page-module__zWjO6q__formField{flex-direction:column;display:flex}.collections-page-module__zWjO6q__coverColumn,.collections-page-module__zWjO6q__formColumn{gap:var(--space-3)}.collections-page-module__zWjO6q__formField{gap:var(--space-1)}.collections-page-module__zWjO6q__fieldLabel{color:var(--color-text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:800}.collections-page-module__zWjO6q__required{color:var(--color-accent-dark)}.collections-page-module__zWjO6q__fieldInput,.collections-page-module__zWjO6q__fieldTextarea{box-sizing:border-box;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);width:100%;color:var(--color-text);font-family:var(--font-body);transition:border-color var(--motion-fast), box-shadow var(--motion-fast), background var(--motion-fast);outline:none;font-size:.96rem}.collections-page-module__zWjO6q__fieldInput{min-height:2.8rem;padding:0 var(--space-3)}.collections-page-module__zWjO6q__fieldTextarea{min-height:7.25rem;padding:var(--space-3);resize:vertical}.collections-page-module__zWjO6q__fieldInput:focus,.collections-page-module__zWjO6q__fieldTextarea:focus{border-color:var(--color-accent);background:var(--color-surface);box-shadow:0 0 0 4px #ff7a4526}.collections-page-module__zWjO6q__visibilityToggle{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;display:grid}.collections-page-module__zWjO6q__visibilityToggle input{width:1.15rem;height:1.15rem;accent-color:var(--color-accent)}.collections-page-module__zWjO6q__visibilityToggle span{flex-direction:column;gap:.15rem;display:flex}.collections-page-module__zWjO6q__visibilityToggle small{color:var(--color-text-soft);font-size:.78rem;line-height:1.35}.collections-page-module__zWjO6q__formError{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:#c92f2b;background:#dc322f1a;border:1px solid #dc322f40;margin:0;font-size:.875rem}.collections-page-module__zWjO6q__formActions{gap:var(--space-3);padding-top:var(--space-1);flex-wrap:wrap;display:flex}.collections-page-module__zWjO6q__coverUploadLabel,.collections-page-module__zWjO6q__coverPreviewWrap{aspect-ratio:4/5;border-radius:var(--radius-lg);width:100%;overflow:hidden}.collections-page-module__zWjO6q__coverUploadLabel{justify-content:center;align-items:center;gap:var(--space-2);border:1px dashed var(--color-border-strong);background:radial-gradient(circle at 50% 20%, var(--color-ambient-3), transparent 35%), var(--color-surface-soft);color:var(--color-text-soft);cursor:pointer;text-align:center;transition:border-color var(--motion-fast), color var(--motion-fast), background var(--motion-fast);flex-direction:column;display:flex}.collections-page-module__zWjO6q__coverUploadLabel:hover{border-color:var(--color-accent);color:var(--color-accent-dark)}.collections-page-module__zWjO6q__coverUploadLabel svg{width:2.4rem;height:2.4rem}.collections-page-module__zWjO6q__coverUploadLabel small{color:var(--color-text-soft);font-size:.78rem}.collections-page-module__zWjO6q__hiddenFileInput{display:none}.collections-page-module__zWjO6q__coverPreviewWrap{background:var(--color-surface-strong);position:relative}.collections-page-module__zWjO6q__coverPreviewImg{object-fit:cover;width:100%;height:100%;display:block}.collections-page-module__zWjO6q__removeCoverButton{top:var(--space-2);right:var(--space-2);min-height:2rem;padding:0 var(--space-2);border-radius:var(--radius-md);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background var(--motion-fast);background:#0a12209e;border:1px solid #ffffff59;font-size:.78rem;font-weight:700;position:absolute}.collections-page-module__zWjO6q__removeCoverButton:hover{background:#c92f2bd1}@media (max-width:760px){.collections-page-module__zWjO6q__hero{grid-template-columns:1fr;align-items:start}.collections-page-module__zWjO6q__hero .collections-page-module__zWjO6q__createButton{width:fit-content}.collections-page-module__zWjO6q__createFormGrid{grid-template-columns:1fr}.collections-page-module__zWjO6q__coverUploadLabel,.collections-page-module__zWjO6q__coverPreviewWrap{aspect-ratio:16/9}}@media (max-width:560px){.collections-page-module__zWjO6q__page{padding-inline:var(--space-3)}.collections-page-module__zWjO6q__grid,.collections-page-module__zWjO6q__skeletonGrid{grid-template-columns:1fr}.collections-page-module__zWjO6q__hero,.collections-page-module__zWjO6q__createModal,.collections-page-module__zWjO6q__confirmModal{border-radius:var(--radius-lg)}.collections-page-module__zWjO6q__createButton,.collections-page-module__zWjO6q__cancelButton{width:100%}.collections-page-module__zWjO6q__formActions,.collections-page-module__zWjO6q__confirmActions{flex-direction:column}}
.help-page-module__4gXTkq__root{gap:var(--space-5);flex-direction:column;width:min(920px,100%);margin-inline:auto;display:flex}.help-page-module__4gXTkq__intro,.help-page-module__4gXTkq__section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft)}.help-page-module__4gXTkq__intro{gap:var(--space-2);padding:clamp(1.2rem,3vw,1.85rem);display:grid}.help-page-module__4gXTkq__caption{color:var(--color-accent-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.help-page-module__4gXTkq__title{max-width:14ch;color:var(--color-text);font-family:var(--font-display);text-wrap:balance;font-size:clamp(2rem,4.8vw,3.4rem);font-weight:700;line-height:1}.help-page-module__4gXTkq__lead{max-width:62ch;color:var(--color-text-soft);text-wrap:pretty;font-size:1rem;line-height:1.6}.help-page-module__4gXTkq__section{gap:var(--space-4);padding:clamp(1rem,2.6vw,1.5rem);display:grid}.help-page-module__4gXTkq__sectionHeader{gap:var(--space-2);display:grid}.help-page-module__4gXTkq__sectionTitle{color:var(--color-text);font-family:var(--font-display);font-size:clamp(1.35rem,2.6vw,1.8rem);font-weight:700}.help-page-module__4gXTkq__sectionText{max-width:68ch;color:var(--color-text-soft);text-wrap:pretty;font-size:.98rem;line-height:1.6}.help-page-module__4gXTkq__topicGrid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin:0;padding:0;list-style:none;display:grid}.help-page-module__4gXTkq__topic{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);display:grid}.help-page-module__4gXTkq__topicTitle{color:var(--color-text);font-family:var(--font-body);font-size:1rem;font-weight:800}.help-page-module__4gXTkq__topicText{color:var(--color-text-soft);text-wrap:pretty;font-size:.92rem;line-height:1.55}.help-page-module__4gXTkq__steps{gap:var(--space-2);counter-reset:help-step;margin:0;padding:0;list-style:none;display:grid}.help-page-module__4gXTkq__step{counter-increment:help-step;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-text-soft);grid-template-columns:auto minmax(0,1fr);align-items:start;font-size:.95rem;line-height:1.55;display:grid}.help-page-module__4gXTkq__step:before{content:counter(help-step);border-radius:var(--radius-pill);background:var(--color-accent);color:#141b29;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-size:.82rem;font-weight:800;display:inline-flex}.help-page-module__4gXTkq__primaryLink{border-radius:var(--radius-pill);background:var(--color-accent);color:#141b29;min-height:2.5rem;transition:background var(--motion-fast), transform var(--motion-fast);justify-content:center;justify-self:start;align-items:center;padding:.65rem 1rem;font-size:.9rem;font-weight:800;text-decoration:none;display:inline-flex}.help-page-module__4gXTkq__primaryLink:hover,.help-page-module__4gXTkq__primaryLink:focus-visible{background:var(--color-accent-dark);outline:none}.help-page-module__4gXTkq__primaryLink:active{transform:scale(.98)}@media (max-width:560px){.help-page-module__4gXTkq__root{gap:var(--space-4)}.help-page-module__4gXTkq__primaryLink{justify-self:stretch}}@media (prefers-reduced-motion:reduce){.help-page-module__4gXTkq__primaryLink{transition-duration:0s}}
.shopping-list-page-module__a0GRlG__container{max-width:720px;margin:0 auto;padding:2rem 1rem}.shopping-list-page-module__a0GRlG__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.shopping-list-page-module__a0GRlG__titleRow{align-items:baseline;gap:.5rem;display:flex}.shopping-list-page-module__a0GRlG__titleRow h1{margin:0;font-size:2rem;font-weight:700}.shopping-list-page-module__a0GRlG__count{color:var(--color-text-soft);font-size:1.25rem;font-weight:400}.shopping-list-page-module__a0GRlG__clearButton{border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-soft);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast);background:0 0;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.875rem;display:inline-flex}.shopping-list-page-module__a0GRlG__clearButton:hover:not(:disabled){background:var(--color-surface-strong);color:var(--color-text);border-color:var(--color-accent)}.shopping-list-page-module__a0GRlG__clearButton:active:not(:disabled){transform:scale(.98)}.shopping-list-page-module__a0GRlG__clearButton:focus-visible,.shopping-list-page-module__a0GRlG__addInput:focus-visible,.shopping-list-page-module__a0GRlG__addButton:focus-visible,.shopping-list-page-module__a0GRlG__checkbox:focus-visible,.shopping-list-page-module__a0GRlG__deleteButton:focus-visible,.shopping-list-page-module__a0GRlG__error button:focus-visible,.shopping-list-page-module__a0GRlG__emptyLink:focus-visible{outline-offset:3px;outline:3px solid #ff7a4559}.shopping-list-page-module__a0GRlG__clearButton:disabled{opacity:.5;cursor:not-allowed}.shopping-list-page-module__a0GRlG__featureHint{margin-bottom:1.25rem}.shopping-list-page-module__a0GRlG__addForm{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-soft);gap:.55rem;margin-bottom:1.5rem;padding:1rem;display:grid}.shopping-list-page-module__a0GRlG__addLabel{color:var(--color-text);font-size:.88rem;font-weight:600}.shopping-list-page-module__a0GRlG__addControls{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;display:grid}.shopping-list-page-module__a0GRlG__addInput{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-soft);width:100%;min-width:0;height:2.75rem;color:var(--color-text);font:inherit;transition:background var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast);padding:0 .95rem}.shopping-list-page-module__a0GRlG__addInput::placeholder{color:var(--color-text-soft);opacity:1}.shopping-list-page-module__a0GRlG__addInput:hover:not(:disabled){border-color:var(--color-accent)}.shopping-list-page-module__a0GRlG__addInput:disabled{opacity:.7;cursor:not-allowed}.shopping-list-page-module__a0GRlG__addButton{border-radius:var(--radius-md);background:var(--color-accent);color:#fff;min-height:2.75rem;font:inherit;cursor:pointer;white-space:nowrap;transition:background var(--motion-fast), transform var(--motion-fast), opacity var(--motion-fast);border:none;justify-content:center;align-items:center;padding:0 1.15rem;font-weight:600;display:inline-flex}.shopping-list-page-module__a0GRlG__addButton:hover:not(:disabled){background:var(--color-accent-dark)}.shopping-list-page-module__a0GRlG__addButton:active:not(:disabled){transform:scale(.98)}.shopping-list-page-module__a0GRlG__addButton:disabled{opacity:.65;cursor:not-allowed}.shopping-list-page-module__a0GRlG__formError{color:#b93b16;margin:0;font-size:.875rem}.shopping-list-page-module__a0GRlG__progressBar{background:var(--color-border);border-radius:var(--radius-pill);height:4px;margin-bottom:2rem;overflow:hidden}.shopping-list-page-module__a0GRlG__progressFill{background:var(--color-accent);border-radius:var(--radius-pill);height:100%;transition:width .3s}.shopping-list-page-module__a0GRlG__groups{flex-direction:column;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.shopping-list-page-module__a0GRlG__group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);overflow:hidden}.shopping-list-page-module__a0GRlG__categoryTitle{letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-soft);background:var(--color-surface-soft);border-bottom:1px solid var(--color-border);margin:0;padding:.75rem 1.25rem;font-size:.75rem;font-weight:600}.shopping-list-page-module__a0GRlG__itemList{margin:0;padding:0;list-style:none}.shopping-list-page-module__a0GRlG__item{transition:background var(--motion-fast);align-items:center;gap:.75rem;padding:.85rem 1.25rem;display:flex}.shopping-list-page-module__a0GRlG__item+.shopping-list-page-module__a0GRlG__item{border-top:1px solid var(--color-border)}.shopping-list-page-module__a0GRlG__item:hover{background:var(--color-surface-soft)}.shopping-list-page-module__a0GRlG__item.shopping-list-page-module__a0GRlG__purchased .shopping-list-page-module__a0GRlG__itemName{color:var(--color-text-soft);text-decoration:line-through}.shopping-list-page-module__a0GRlG__item.shopping-list-page-module__a0GRlG__purchased .shopping-list-page-module__a0GRlG__itemAmount{color:var(--color-text-soft)}.shopping-list-page-module__a0GRlG__checkbox{border-radius:var(--radius-sm);border:2px solid var(--color-border-strong);cursor:pointer;color:#fff;width:22px;height:22px;transition:background var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.shopping-list-page-module__a0GRlG__checkbox:hover:not(:disabled){border-color:var(--color-accent)}.shopping-list-page-module__a0GRlG__checkbox:active:not(:disabled){transform:scale(.96)}.shopping-list-page-module__a0GRlG__item.shopping-list-page-module__a0GRlG__purchased .shopping-list-page-module__a0GRlG__checkbox{background:var(--color-accent);border-color:var(--color-accent)}.shopping-list-page-module__a0GRlG__checkbox:disabled{opacity:.6;cursor:not-allowed}.shopping-list-page-module__a0GRlG__itemInfo{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.shopping-list-page-module__a0GRlG__itemName{color:var(--color-text);transition:color var(--motion-fast);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:500;overflow:hidden}.shopping-list-page-module__a0GRlG__sources{color:var(--color-text-soft);font-size:.75rem}.shopping-list-page-module__a0GRlG__sources summary{cursor:pointer}.shopping-list-page-module__a0GRlG__sources ul{margin:.35rem 0 0;padding-left:1rem}.shopping-list-page-module__a0GRlG__itemAmount{color:var(--color-text-soft);white-space:nowrap;flex-shrink:0;font-size:.875rem}.shopping-list-page-module__a0GRlG__deleteButton{padding:var(--space-1);color:var(--color-text-soft);cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:opacity var(--motion-fast), color var(--motion-fast), background var(--motion-fast), transform var(--motion-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.shopping-list-page-module__a0GRlG__item:hover .shopping-list-page-module__a0GRlG__deleteButton{opacity:1}.shopping-list-page-module__a0GRlG__deleteButton:hover:not(:disabled){color:#e55a2b;background:#e55a2b14}.shopping-list-page-module__a0GRlG__deleteButton:active:not(:disabled){transform:scale(.92)}.shopping-list-page-module__a0GRlG__deleteButton:disabled{cursor:not-allowed}.shopping-list-page-module__a0GRlG__loading{text-align:center;color:var(--color-text-soft);padding:3rem 1rem}.shopping-list-page-module__a0GRlG__error{text-align:center;padding:3rem 1rem}.shopping-list-page-module__a0GRlG__error p{color:var(--color-text-soft);margin:0 0 1rem;font-size:1.125rem}.shopping-list-page-module__a0GRlG__error button{background:var(--color-accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:background var(--motion-fast), transform var(--motion-fast);border:none;padding:.75rem 1.5rem;font-size:1rem}.shopping-list-page-module__a0GRlG__error button:hover{background:var(--color-accent-dark)}.shopping-list-page-module__a0GRlG__error button:active{transform:scale(.98)}.shopping-list-page-module__a0GRlG__empty{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:5rem 1rem;display:flex}.shopping-list-page-module__a0GRlG__emptyIcon{width:56px;height:56px;color:var(--color-border-strong);margin-bottom:.5rem}.shopping-list-page-module__a0GRlG__emptyTitle{color:var(--color-text);margin:0;font-size:1.5rem;font-weight:600}.shopping-list-page-module__a0GRlG__emptyHint{color:var(--color-text-soft);max-width:340px;margin:0;font-size:1rem}.shopping-list-page-module__a0GRlG__emptyLink{background:var(--color-accent);color:#fff;border-radius:var(--radius-md);transition:background var(--motion-fast), transform var(--motion-fast);margin-top:.75rem;padding:.75rem 1.75rem;font-weight:500;text-decoration:none;display:inline-block}.shopping-list-page-module__a0GRlG__emptyLink:hover{background:var(--color-accent-dark)}.shopping-list-page-module__a0GRlG__emptyLink:active{transform:scale(.98)}@media (max-width:600px){.shopping-list-page-module__a0GRlG__container{padding:1rem}.shopping-list-page-module__a0GRlG__titleRow h1{font-size:1.5rem}.shopping-list-page-module__a0GRlG__item{padding:.75rem 1rem}.shopping-list-page-module__a0GRlG__categoryTitle{padding:.6rem 1rem}.shopping-list-page-module__a0GRlG__addControls{grid-template-columns:1fr}.shopping-list-page-module__a0GRlG__addButton{width:100%}.shopping-list-page-module__a0GRlG__deleteButton{opacity:1}}@media (prefers-reduced-motion:reduce){.shopping-list-page-module__a0GRlG__clearButton,.shopping-list-page-module__a0GRlG__addInput,.shopping-list-page-module__a0GRlG__addButton,.shopping-list-page-module__a0GRlG__progressFill,.shopping-list-page-module__a0GRlG__item,.shopping-list-page-module__a0GRlG__checkbox,.shopping-list-page-module__a0GRlG__itemName,.shopping-list-page-module__a0GRlG__deleteButton,.shopping-list-page-module__a0GRlG__error button,.shopping-list-page-module__a0GRlG__emptyLink{transition:none}}
