.loading-spinner{width:16px;height:16px;margin-right:4px}.recipe-card{transition:transform .2s ease,box-shadow .2s ease}.recipe-card:hover{transform:translateY(-5px)!important;box-shadow:0 8px 16px rgba(0,0,0,.3)!important}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#121212;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.dark,[data-theme=dark]{color-scheme:dark}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes spin{to{transform:rotate(1turn)}}.fade-in{animation:fadeIn .3s ease forwards}.slide-up{animation:slideUp .4s ease forwards}.slide-down{animation:slideDown .4s ease forwards}.pulse{animation:pulse 2s ease-in-out infinite}.loading-spinner{display:inline-block;width:20px;height:20px;border-radius:50%;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;animation:spin 1s ease-in-out infinite}.recipe-card{transition:transform .3s ease,box-shadow .3s ease}.recipe-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.2)}.modal-backdrop{animation:fadeIn .3s ease forwards}.modal-content{animation:slideUp .3s ease forwards}.filter-toggle{transition:left .2s ease-in-out}.page-enter{opacity:0}.page-enter-active{opacity:1;transition:opacity .3s}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .3s}