.recipes-page{padding:var(--space-4xl) 0 var(--space-5xl)}.recipes-header{margin-bottom:var(--space-xl)}.recipes-subtitle{margin-top:var(--space-sm);color:var(--color-body);max-width:560px}.filter-bar{padding:var(--space-lg);margin-bottom:var(--space-xl)}.filter-rows{gap:var(--space-md);flex-direction:column;display:flex}.filter-group{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.filter-label{color:var(--color-mute);font-size:13px;font-weight:500;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;min-width:72px}.filter-pills{gap:var(--space-xs);flex-wrap:wrap;display:flex}.filter-btn{padding:6px var(--space-sm);border-radius:var(--radius-pill);border:1px solid var(--color-hairline);background:var(--color-canvas-soft);color:var(--color-body);cursor:pointer;white-space:nowrap;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s}.filter-btn:hover{border-color:var(--color-accent);color:var(--color-accent-deep)}.filter-btn.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.results-count{color:var(--color-mute);font-size:13px;font-family:var(--font-mono);margin-top:var(--space-md)}.recipes-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.recipe-card{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);cursor:pointer;text-align:left;flex-direction:column;font-family:inherit;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;overflow:hidden}.recipe-card:hover{box-shadow:var(--shadow-4);border-color:var(--color-hairline-strong);transform:translateY(-3px)}.card-visual{flex-shrink:0;justify-content:center;align-items:center;height:110px;display:flex}.card-visual-veg{background:#d1fae5}.card-visual-nonveg{background:#ffedd5}html.dark .card-visual-veg{background:#064e3b}html.dark .card-visual-nonveg{background:#431407}.card-emoji{font-size:56px;line-height:1;display:block}.card-body{padding:var(--space-sm) var(--space-md) var(--space-md);flex-direction:column;flex:1;gap:6px;display:flex}.recipe-name{color:var(--color-ink);font-size:15px;font-weight:600;line-height:1.3}.diet-badge-pill{border-radius:var(--radius-full);align-items:center;gap:3px;width:fit-content;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.diet-veg{color:#065f46;background:#d1fae5}.diet-nonveg{color:#9a3412;background:#ffedd5}html.dark .diet-veg{color:#6ee7b7;background:#064e3b}html.dark .diet-nonveg{color:#fdba74;background:#431407}.card-calories{color:var(--color-accent-deep);letter-spacing:-.5px;margin-top:2px;font-size:22px;font-weight:700}.card-cal-unit{color:var(--color-mute);font-size:13px;font-weight:400}.macro-pills-row{flex-wrap:wrap;gap:4px;display:flex}.mpill{border-radius:var(--radius-full);background:var(--color-canvas-soft-2);color:var(--color-mute);font-size:11px;font-family:var(--font-mono);border:1px solid var(--color-hairline);padding:2px 7px}.card-prep{color:var(--color-mute);align-items:center;gap:4px;margin-top:2px;font-size:12px;display:flex}.card-prep svg{flex-shrink:0}.no-results{text-align:center;color:var(--color-mute);padding:var(--space-4xl) 0;font-size:15px}.hidden{display:none!important}.modal-overlay{z-index:200;padding:var(--space-md);background:#0000008c;justify-content:center;align-items:center;animation:.18s overlayIn;display:flex;position:fixed;inset:0}.modal-overlay.hidden{display:none!important}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal-box{background:var(--color-canvas);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:90vh;box-shadow:0 24px 64px #0000002e, 0 0 0 1px var(--color-hairline);animation:.2s cubic-bezier(.34,1.2,.64,1) modalIn;position:relative;overflow-y:auto}@keyframes modalIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.modal-close{top:var(--space-md);float:right;margin:var(--space-md) var(--space-md) 0 0;border-radius:var(--radius-full);background:var(--color-canvas-soft-2);width:36px;height:36px;color:var(--color-body);border:1px solid var(--color-hairline);cursor:pointer;z-index:1;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex;position:sticky}.modal-close:hover{background:var(--color-error-soft);color:var(--color-error);border-color:#0000}.modal-inner{padding:0 var(--space-xl) var(--space-xl);clear:both}.modal-emoji-wrap{text-align:center;padding:var(--space-md) 0 var(--space-sm)}.modal-emoji{font-size:96px;line-height:1;display:inline-block}.modal-recipe-title{letter-spacing:-.6px;color:var(--color-ink);text-align:center;margin-bottom:var(--space-sm);font-size:24px;font-weight:700}.modal-meta-row{justify-content:center;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.modal-badge{border-radius:var(--radius-full);padding:3px 10px;font-size:12px;font-weight:500}.modal-badge-veg{color:#065f46;background:#d1fae5}.modal-badge-nonveg{color:#9a3412;background:#ffedd5}.modal-badge-type{background:var(--color-canvas-soft-2);color:var(--color-body);border:1px solid var(--color-hairline)}.modal-badge-time{background:var(--color-canvas-soft-2);color:var(--color-body);border:1px solid var(--color-hairline);align-items:center;gap:4px;display:flex}html.dark .modal-badge-veg{color:#6ee7b7;background:#064e3b}html.dark .modal-badge-nonveg{color:#fdba74;background:#431407}.modal-nutrition{background:var(--color-canvas-soft);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg);border:1px solid var(--color-hairline)}.modal-cal-label{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--color-mute)}.modal-cal-value{letter-spacing:-2px;color:var(--color-accent-deep);margin:4px 0 var(--space-md);font-size:44px;font-weight:700;line-height:1.1}.modal-macro-grid{gap:var(--space-xs);grid-template-columns:repeat(4,1fr);display:grid}.macro-box{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-md);padding:var(--space-sm);text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.macro-box-val{color:var(--color-ink);font-size:16px;font-weight:700}.macro-box-label{color:var(--color-mute);font-size:11px;font-family:var(--font-mono);text-transform:uppercase}.modal-section{margin-bottom:var(--space-lg)}.modal-section-title{color:var(--color-ink);margin-bottom:var(--space-sm);font-size:15px;font-weight:600}.modal-list{padding-left:var(--space-lg);gap:var(--space-xs);flex-direction:column;display:flex}.modal-list li{color:var(--color-body);font-size:14px;line-height:1.5}.log-recipe-btn{border-radius:var(--radius-pill);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-xs);border:none;width:100%;padding:14px;font-family:inherit;font-size:16px;display:flex}.tab-bar{background:var(--color-canvas-soft-2);border-radius:var(--radius-lg);margin-bottom:var(--space-xl);gap:2px;width:fit-content;padding:4px;display:flex}.tab-btn{padding:8px var(--space-lg);border-radius:var(--radius-md);color:var(--color-mute);cursor:pointer;white-space:nowrap;align-items:center;gap:var(--space-xs);background:0 0;border:none;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.tab-btn.active{background:var(--color-canvas);color:var(--color-ink);box-shadow:var(--shadow-2)}.tab-count{background:var(--color-accent);color:#fff;border-radius:var(--radius-full);padding:1px 7px;font-size:11px;font-weight:600;line-height:1.4}.my-form-card{margin-bottom:var(--space-xl)}.my-form-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.my-form-title{color:var(--color-ink);font-size:15px;font-weight:600}.my-form-cancel{color:var(--color-mute);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;text-decoration:underline;transition:color .15s}.my-form-cancel:hover{color:var(--color-ink)}.my-form-body{gap:var(--space-md);flex-direction:column;display:flex}.my-form-row{gap:var(--space-xxs);flex-direction:column;display:flex}.my-form-2col{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.my-form-3col{gap:var(--space-md);grid-template-columns:1fr 1fr 1fr;display:grid}.form-label-hint{color:var(--color-mute);font-weight:400}.my-form-actions{gap:var(--space-sm);padding-top:var(--space-xs);flex-wrap:wrap;display:flex}.my-form-error{color:var(--color-error);font-size:13px}.toggle-group{gap:var(--space-xxs);flex-wrap:wrap;display:flex}.toggle-btn{padding:6px var(--space-sm);border-radius:var(--radius-pill);border:1px solid var(--color-hairline);background:var(--color-canvas-soft);color:var(--color-body);cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s}.toggle-btn:hover{border-color:var(--color-accent);color:var(--color-accent-deep)}.toggle-btn.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.my-empty-state{text-align:center;padding:var(--space-5xl) 0}.my-empty-icon{margin-bottom:var(--space-md);font-size:56px}.my-empty-title{color:var(--color-ink);margin-bottom:var(--space-xs);font-size:20px;font-weight:600}.my-empty-sub{color:var(--color-mute);margin-bottom:var(--space-xl);font-size:15px}.my-recipes-toolbar{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.user-recipe-card{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);cursor:pointer;text-align:left;flex-direction:column;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.user-recipe-card:hover{box-shadow:var(--shadow-4);border-color:var(--color-hairline-strong);transform:translateY(-3px)}.user-card-actions{top:var(--space-xs);right:var(--space-xs);z-index:1;gap:4px;display:flex;position:absolute}.user-card-action-btn{border-radius:var(--radius-sm);backdrop-filter:blur(4px);cursor:pointer;background:#ffffffe0;border:none;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 6px;font-size:13px;transition:background .15s;display:flex;box-shadow:0 1px 3px #0000001f}.user-card-action-btn:hover{background:#fff}html.dark .user-card-action-btn{background:#1e1e1ee0}html.dark .user-card-action-btn:hover{background:#373737f2}.btn-save-recipe{width:100%;margin-top:var(--space-sm);padding:12px var(--space-lg);border-radius:var(--radius-pill);border:2px solid var(--color-accent);color:var(--color-accent-deep);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-xs);background:0 0;font-family:inherit;font-size:15px;font-weight:600;transition:all .15s;display:flex}.btn-save-recipe:hover:not(:disabled){background:var(--color-accent-soft)}.btn-save-recipe:disabled{opacity:.55;cursor:default}.user-recipe-actions{gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.btn-user-edit{border-radius:var(--radius-pill);border:1px solid var(--color-hairline);background:var(--color-canvas-soft);color:var(--color-ink);cursor:pointer;flex:1;padding:12px;font-family:inherit;font-size:15px;font-weight:500;transition:all .15s}.btn-user-edit:hover{border-color:var(--color-accent);color:var(--color-accent-deep);background:var(--color-accent-soft)}.btn-user-delete{border-radius:var(--radius-pill);border:1px solid var(--color-error);width:100%;color:var(--color-error);cursor:pointer;background:0 0;padding:12px;font-family:inherit;font-size:15px;font-weight:500;transition:all .15s}.btn-user-delete:hover{background:var(--color-error-soft)}.modal-badge-user{background:var(--color-accent-soft);color:var(--color-accent-deep);border:1px solid var(--color-accent)}.section-picker{margin-top:var(--space-sm)}.section-picker-label{color:var(--color-body);margin-bottom:var(--space-xs);text-align:center;font-size:14px;font-weight:500}.section-picker-btns{gap:var(--space-xs);flex-wrap:wrap;justify-content:center;display:flex}.section-btn{padding:8px var(--space-md);border-radius:var(--radius-pill);border:1px solid var(--color-hairline);background:var(--color-canvas-soft);color:var(--color-body);cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s}.section-btn:hover{border-color:var(--color-accent);color:var(--color-accent-deep);background:var(--color-accent-soft)}.recipe-toast{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-accent-soft);border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-accent-deep);text-align:center;font-size:14px;font-weight:600}@media (width<=900px){.recipes-grid{grid-template-columns:repeat(2,1fr)}.filter-group{align-items:flex-start;gap:var(--space-xs);flex-direction:column}.filter-label{min-width:unset}}@media (width<=600px){.recipes-page{padding:var(--space-xl) 0 var(--space-3xl)}.recipes-grid{grid-template-columns:1fr}.modal-inner{padding:0 var(--space-md) var(--space-lg)}.modal-emoji{font-size:72px}.modal-recipe-title{font-size:20px}.modal-macro-grid{grid-template-columns:repeat(2,1fr)}.modal-cal-value{font-size:36px}}
