.chips{scrollbar-width:none;gap:8px;margin-bottom:24px;padding-bottom:4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.recipe-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;flex-direction:column;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;overflow:hidden}.recipe-card:hover{color:inherit;border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.recipe-cover{background:linear-gradient(135deg,#d1fae5,#a7f3d0);place-items:center;height:140px;font-size:3.2rem;display:grid}.cover-smoothie{background:linear-gradient(135deg,#fce7f3,#fbcfe8)}.cover-dessert{background:linear-gradient(135deg,#fef3c7,#fde68a)}.cover-snack{background:linear-gradient(135deg,#ffedd5,#fed7aa)}.cover-petit-dejeuner{background:linear-gradient(135deg,#e0f2fe,#bae6fd)}.cover-collation{background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.cover-boisson{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}:root[data-theme=dark] .recipe-cover{filter:saturate(.7)brightness(.55)}:root[data-theme=dark] .recipe-cover span{filter:brightness(1.8)}.recipe-body{flex-direction:column;flex:1;gap:6px;padding:16px;display:flex}.recipe-cat{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:8px;font-size:.78rem;font-weight:600;display:flex}.recipe-title{font-size:1.05rem;font-weight:650}.recipe-desc{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;display:-webkit-box;overflow:hidden}.recipe-facts{flex-wrap:wrap;gap:6px;margin:auto 0 0;padding:10px 0 0;list-style:none;display:flex}.recipe-facts li{background:var(--surface-2);color:var(--text-2);border-radius:999px;padding:3px 9px;font-size:.78rem;font-weight:500}.recipe-facts .fact-accent{background:var(--accent-soft);color:var(--accent-text)}.empty-state{text-align:center;color:var(--text-2);justify-items:center;gap:12px;padding:48px 16px;display:grid}.recipe-hero{align-items:center;gap:24px;padding:32px 0 8px;display:grid}@media (min-width:900px){.recipe-hero{grid-template-columns:minmax(0,1fr) 320px}}.recipe-hero .recipe-cover{border-radius:var(--radius-lg);height:220px;font-size:5rem}.nutrition{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;max-width:600px;margin:24px 0 0;display:grid}.nutrition div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.nutrition dt{color:var(--text-3);font-size:.75rem}.nutrition dd{margin:2px 0 0;font-size:1.15rem;font-weight:700}.nutrition .is-accent dd{color:var(--accent)}.recipe-content{align-items:start;gap:24px;margin-top:32px;display:grid}@media (min-width:900px){.recipe-content{grid-template-columns:340px minmax(0,1fr)}.ingredients{top:calc(var(--header-h) + 16px);position:sticky}}.panel{padding:20px}.panel h2{margin-bottom:14px;font-size:1.1rem}.ingredient-list,.step-list{margin:0;padding:0;list-style:none}.ingredient-list li+li{border-top:1px solid var(--border)}.ingredient-list label{cursor:pointer;align-items:flex-start;gap:12px;padding:10px 0;display:flex}.ingredient-list input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin-top:4px}.ingredient-list input:checked+span{color:var(--text-3);text-decoration:line-through}.step-list{counter-reset:step;gap:18px;display:grid}.step-list li{counter-increment:step;color:var(--text-2);grid-template-columns:32px 1fr;gap:14px;display:grid}.step-list li:before{content:counter(step);background:var(--accent-soft);width:32px;height:32px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:.85rem;font-weight:700;display:grid}.step-list li span{padding-top:4px}.cta-banner{background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding:20px;display:flex}.cta-banner p{color:var(--accent-text);font-weight:500}.section-title{margin:48px 0 16px;font-size:1.2rem}
