.filter-chip{padding:8px 16px;border:1px solid var(--input-border);border-radius:20px;margin:5px;cursor:pointer;font-size:14px;-webkit-user-select:none;user-select:none;color:var(--text-color);transition:all .2s ease}.filter-chip.active{background-color:var(--primary-color);color:var(--text-color);font-weight:700;border-color:var(--primary-color)}.recipe-card{background-color:#fff;border-radius:30px;box-shadow:0 1px 3px #0003;padding:10px;text-align:center;transition:background-color .2s ease-out,box-shadow .2s ease-out;cursor:pointer;height:100%}.recipe-card:hover{background-color:#fafafa;box-shadow:0 2px 5px #0003}.recipe-card img,.recipe-card .missingImage{display:flex;width:100%;height:180px;object-fit:cover;border-radius:20px;margin-bottom:10px}.recipe-card .missingImage{align-items:center;justify-content:center;background-color:#dfdfdf;color:#fff}.recipe-card .missingImage>svg{display:block;height:40px;width:40px;transition:all .2s ease-out}.recipe-card:hover .missingImage>svg{height:50px;width:50px}.recipe-card h3{font-size:25px;margin-bottom:5px}.recipe-card .rating{--bg-size: 300%;--color-bright: #dbb300;--color-dark: gold;color:transparent;background:linear-gradient(90deg,var(--color-bright),var(--color-dark),var(--color-bright)) 0 0 / var(--bg-size) 100%;background-clip:text;-webkit-background-clip:text;animation:animated-gradient 8s infinite ease-out}.recipe-card .creator,.time{font-size:12px;color:#999}.image-container{position:relative;width:100%;height:auto;overflow:hidden}.cooking-time-box{position:absolute;top:0;right:0;background-color:#00000078;color:#fff;padding:5px 10px;border-radius:0 20px;min-height:40px;display:flex;align-items:center}.cooking-time-box p{margin:0;font-size:14px}@keyframes animated-gradient{to{background-position:var(--bg-size) 0}}#recipes{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.sort-controls{padding:10px 0}.image-carousel{position:relative;width:100%;overflow:hidden;border-radius:20px}.image-carousel-viewport{overflow:hidden;width:100%}.image-carousel-track{display:flex;transition:transform .4s ease-in-out}.image-carousel-slide{min-width:100%;flex-shrink:0}.image-carousel-slide img{width:100%;display:block}.image-carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#00000059;color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease,background .2s ease;z-index:2;padding:0}.image-carousel:hover .image-carousel-btn{opacity:1}.image-carousel-btn:hover{background:#0009}.image-carousel-btn-prev{left:10px}.image-carousel-btn-next{right:10px}.image-carousel-dots{display:flex;justify-content:center;gap:6px;padding:10px 0;position:absolute;bottom:4px;left:0;right:0}.image-carousel-dot{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;padding:0;transition:background .2s ease,transform .2s ease}.image-carousel-dot.active{background:#fff;transform:scale(1.25)}.image-carousel-dot:hover{background:#ffffffd9}.recipeLabel{background-color:var(--primary-color)!important;color:#fff!important;font-weight:700}.recipeLabel svg{color:#fff!important}.carousel-image{display:flex;margin-left:auto;margin-right:auto;width:100%;height:400px;object-fit:cover;border-radius:20px}.recipeStep .carousel-image{height:400px;width:auto}.card,.imageCard{background-color:#fff;color:var(--text-color);border-radius:30px;box-shadow:0 1px 3px #0003;transition:background-color .2s ease-out,box-shadow .2s ease-out;padding:20px;margin:20px 0;scroll-snap-stop:normal;scroll-snap-align:center}.imageCard>p{border-color:var(--input-border);border-style:solid;border-width:1px;border-radius:15px;padding:15px}.card>h2,.imageCard>h2{margin-top:0;margin-bottom:10px;font-size:30px;font-weight:700}.imageCard{overflow:hidden}.imageCard>img{width:100%;border-radius:10px;object-fit:cover;max-height:400px}.recipePage{overscroll-behavior-x:contain;width:100%;height:100vh;scroll-behavior:smooth;overflow:auto}.recipeDescription{margin:12px 0 20px;padding:16px;background-color:var(--ingredients-bg, rgba(0, 0, 0, .02));border:1px solid var(--ingredients-border, rgba(0, 0, 0, .08));border-radius:12px}.recipeStep{display:flex;flex-direction:row;align-items:center;position:relative}.recipeStepContent{flex-grow:1}.recipeStepCarousel{margin-bottom:8px}.stepCounterCircle{border:5px solid var(--primary-color);background-color:#fff;border-radius:50%;width:40px;height:40px;text-align:center;line-height:30px;font-weight:800;margin-right:50px}.recipeStep:not(:first-child) .stepCounterTopLine{position:absolute;top:0;left:18px;width:4px;height:50%;background-color:var(--primary-color);z-index:-1}.recipeStep:not(:last-child) .stepCounterBottomLine{position:absolute;bottom:0;left:18px;width:4px;height:50%;background-color:var(--primary-color);z-index:-1}.instructionText{display:block}.deleteButton{background-color:#cc4545}.deleteButton:hover{background-color:#ba3d3d}.clickable-amount{cursor:pointer;transition:font-weight .2s ease,color .2s ease;font-weight:400;display:inline-block;text-align:right;width:100%}.clickable-amount:hover{font-weight:700;color:var(--dark-green)}.clickable-amount:active{transform:scale(.95)}.ingredients-list{margin:12px 0 20px;padding:16px;background-color:var(--ingredients-bg, rgba(0, 0, 0, .02));border:1px solid var(--ingredients-border, rgba(0, 0, 0, .08));border-radius:12px}.ingredient-item{margin-bottom:8px}.ingredient-item:last-child{margin-bottom:0}.ingredient-row{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.ingredient-amount-and-name{display:flex;align-items:flex-start;gap:8px;width:100%}.ingredient-amount{flex-shrink:0;width:80px;text-align:right}.ingredient-name-container{flex:1;min-width:0;text-align:left}.yeast-conversion{display:block;white-space:pre-line;margin-top:4px;font-size:.875rem;line-height:1.4;color:var(--dark-green);overflow-wrap:anywhere}.ingredient-name{font-weight:400}.portions-row{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--portions-border, rgba(0, 0, 0, .1))}.portions-amount-and-label{display:flex;align-items:center;gap:8px;width:100%}.portions-amount{flex-shrink:0}.portions-label-container{flex:1;text-align:left}.portions-label{font-weight:700}.clickable-portions{cursor:pointer;transition:font-weight .2s ease,color .2s ease,transform .2s ease;font-weight:700;display:inline-block;text-align:left;width:100%}.clickable-portions:hover{font-weight:700;color:var(--dark-green);transform:scale(1.1)}.amount-input{border:2px solid var(--primary-color);border-radius:16px;padding:2px 6px;font-size:inherit;font-family:inherit;background-color:var(--background-color);color:var(--text-color);min-width:50px;max-width:80px;text-align:center;outline:none}.amount-input:focus{border-color:var(--dark-green);box-shadow:0 0 0 2px #00800033}.portions-input{border:2px solid var(--primary-color);border-radius:16px;padding:2px 6px;font-size:inherit;font-family:inherit;background-color:var(--background-color);color:var(--text-color);min-width:50px;max-width:80px;text-align:center;outline:none}.portions-input:focus{border-color:var(--dark-green);box-shadow:0 0 0 2px #00800033}.warning-message{color:#d32f2f;font-size:.875rem;margin-top:4px;margin-left:20px;font-weight:500;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media screen and (max-width:1200px){.stepCounterCircle{margin-right:10px}.recipeStep .carousel-image{height:200px}}@media(hover:none)and (pointer:coarse){.clickable-amount,.clickable-portions{color:var(--dark-green)!important;font-weight:700!important}}.galleryImg{width:400px;border-radius:10px;object-fit:cover;height:400px;position:relative;display:inline-block}.stepImg{width:100px;height:100px;object-fit:cover;border-radius:10px;position:relative;display:inline-block}.deleteIconStep{padding:3px}.coverImg{width:400px;border-radius:10px;object-fit:cover;max-height:400px;display:block}.deleteIcon,.deleteIconStep{top:0;left:0;position:absolute;background:#2a2a2a7c;border:none;border-radius:0;border-start-start-radius:10px;border-end-end-radius:10px;box-shadow:none;color:#c2c2c2}.deleteIcon:hover,.deleteIconStep:hover{background:#2a2a2ac9;color:#fff}.uploadImgContainer{position:relative}.imageList{overflow-x:auto}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.loading-overlay{display:flex;align-items:center;justify-content:center;width:100%;flex:1;padding:60px 20px}.loading-card{display:flex;flex-direction:column;align-items:center;gap:14px;animation:fadeInUp .35s ease-out}.loading-spinner{width:40px;height:40px;border-radius:50%;border:3px solid var(--input-border);border-top-color:var(--dark-green);animation:spin .85s linear infinite}.loading-title{margin:0;font-size:.95rem;font-weight:500;color:var(--text-color)}.loading-hint{margin:0;font-size:.78rem;color:var(--text-color);opacity:.4}:root{--primary-color: #869285;--secondary-color: #768375;--dark-green: #476444;--text-color: #454545;--bg-color: #ffffff;--card-bg: #ffffff;--shadow-color: rgba(0, 0, 0, .2);--input-bg: #ffffff;--input-border: #ccc;--missing-image-bg: #dfdfdf;--step-counter-bg: #ffffff;--ingredients-bg: rgba(0, 0, 0, .02);--ingredients-border: rgba(0, 0, 0, .08);--portions-border: rgba(0, 0, 0, .1)}:root[data-theme=dark]{--primary-color: #7a8579;--secondary-color: #657264;--dark-green: #537551;--text-color: #e1e1e1;--bg-color: #1a1a1a;--card-bg: #2d2d2d;--shadow-color: rgba(0, 0, 0, .4);--input-bg: #2d2d2d;--input-border: #444;--missing-image-bg: #3d3d3d;--step-counter-bg: #2d2d2d;--ingredients-bg: rgba(255, 255, 255, .05);--ingredients-border: rgba(255, 255, 255, .1);--portions-border: rgba(255, 255, 255, .15)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0;background-color:var(--bg-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease}header{display:grid;align-items:center;grid-template-columns:auto 1fr auto auto;gap:20px;padding:0 20px}.main{min-height:100vh;display:flex;flex-direction:column}footer{text-align:center;margin-top:auto;padding:20px;color:gray}h1,h2,h3{font-weight:700;font-family:-apple-system,BlinkMacSystemFont,sans-serif;color:var(--primary-color)}h4{color:var(--text-color)}a{text-decoration:none;color:inherit}#logo{grid-column:1;margin:20px 0}#logo img{height:80px}.search-bar{grid-column:2;width:100%;max-width:600px;justify-self:center}.header-buttons{grid-column:3 / span 2;display:flex;align-items:center;gap:10px}#login,#create-recipe{grid-column:4}.filters{display:flex;flex-wrap:wrap;margin-bottom:20px}.label{background-color:#a6bdd2;color:#fff;font-size:15px;font-weight:700;border-radius:40px;display:inline-block;padding:5px 10px;margin-bottom:5px;margin-inline:2px;transition:background-color .2s ease-out}input,textarea,select{font-size:16px;padding:10px;border:1px solid var(--input-border);border-radius:4px;background-color:var(--input-bg);color:var(--text-color)}textarea{border-end-end-radius:4px;resize:vertical;min-height:41px;font-family:Arial,Helvetica,sans-serif}button,.btn{text-align:center;font-size:16px;font-weight:700;color:#fff;padding:10px;border:none;border-radius:30px;background-color:var(--primary-color);cursor:pointer}button:hover,.btn:hover{background-color:var(--secondary-color);box-shadow:0 2px 5px #0003}.inlineForm>*{margin:0 5px}.inlineForm>*:first-child{margin-left:0}.inlineForm>*:last-child{margin-right:0}.formRow{display:flex;margin:5px 0;align-items:center}.clearBtn,.clearBtn:hover{background:none;border:none;box-shadow:none;border-radius:0;display:flex;color:#aaa}.content{margin:0 15%}.hidden{display:none!important}.link{color:#007bff;cursor:pointer}.link:hover{color:#49a1ff}footer .link{color:#858282}.w100{width:100%}.card,.imageCard,.recipe-card{background-color:var(--card-bg);color:var(--text-color);box-shadow:0 1px 3px var(--shadow-color);transition:background-color .3s ease,color .3s ease,box-shadow .3s ease}.recipe-card:hover{background-color:var(--card-bg);box-shadow:0 2px 5px var(--shadow-color)}.recipe-card .missingImage{align-items:center;justify-content:center;background-color:var(--missing-image-bg);color:var(--text-color)}.theme-toggle{background:none;border:none;padding:8px;cursor:pointer;color:var(--text-color);display:flex;align-items:center;justify-content:center;border-radius:50%;width:40px;height:40px;transition:background-color .2s ease}.theme-toggle:hover{background-color:var(--primary-color);box-shadow:none}.theme-toggle svg{width:20px;height:20px}.stepCounterCircle{border:5px solid var(--primary-color);background-color:var(--step-counter-bg);color:var(--text-color);border-radius:50%;width:40px;height:40px;text-align:center;line-height:30px;font-weight:800;margin-right:50px}@media screen and (max-width:1200px){header{display:flex;flex-direction:column;padding:20px}#logo{margin:10px 0}.search-bar{width:100%;margin-bottom:15px!important}.header-buttons{display:flex;gap:10px;align-items:center}.content{margin:0 7%}}
