.login-register-box{text-align:center;align-items:center;display:flex;flex-direction:column}.login-register-box h2{font-size:clamp(10px,1.5rem,100px)}.login-register-form-box{display:flex;flex-direction:column;width:45%}.login-register-input-field{margin:10px;padding:10px;border:1px solid #ccc;transition:border-color .2s ease}.login-register-input-field.input-error{border:2px solid #e74c3c}.login-register-submit-btn{background-color:var(--pastell-green);border:none;border-radius:15px;padding:10px;margin-bottom:20px}.switch-form-btn{background-color:transparent;border:none;color:var(--pastell-green)}.recipe-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000001f;cursor:pointer;display:flex;flex-direction:column;transition:transform .1s ease,box-shadow .1s ease}.recipe-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:4px}.recipe-card-title{font-size:16px;margin:0;flex:1;line-height:1.3;min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.recipe-card-image-wrapper{width:100%;aspect-ratio:4 / 2;overflow:hidden;background:#ddd}.recipe-card-image{width:100%;height:100%;object-fit:cover}.recipe-card-content{padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px}.recipe-card-description{margin:0;font-size:14px;color:#666;line-height:1.4;min-height:1.4em;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.recipe-card-tags{margin-top:4px;display:flex;flex-wrap:wrap;gap:4px}.tag-pill{font-size:11px;padding:2px 6px;border-radius:999px;background:#eee;color:#333}.tag-more{background:#e0e0e0!important;color:#555!important}.tag-none{font-size:11px;color:#999}.recipe-card-footer{margin-top:6px;font-size:12px;color:#666}.recipe-card-author{font-style:italic}.overview-favorite-button{background:transparent;border:none;color:var(-soft-black);z-index:2;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.overview-favorite-button.overview-favorite-active{color:#ad0000}.recipe-preview-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.recipe-preview-modal{background:#fff;position:fixed;overflow-y:auto;box-shadow:0 4px 20px #00000026;will-change:transform;transform:translateZ(0);z-index:1001;-webkit-transform:translate3d(0,0,10px)}.recipe-preview-close{position:absolute;top:16px;right:16px;background:#ffffffe6;border:none;border-radius:50%;width:32px;height:32px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s ease}.recipe-preview-close:hover{background:#fff}.recipe-preview-layout{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:35% 1fr;gap:20px;padding:24px;height:100%;box-sizing:border-box}.recipe-preview-image-section{grid-column:1;grid-row:1;min-height:0}.recipe-preview-image{width:100%;height:100%;object-fit:cover;border-radius:12px}.recipe-preview-ingredients-section{grid-column:2;grid-row:1;padding:16px;background:#f8f9fa;border-radius:12px;overflow-y:auto;min-height:0}.recipe-preview-ingredients-section h3{margin:0 0 12px;font-size:16px;color:#333;font-weight:600}.recipe-preview-ingredients-quick{margin:0;padding-left:20px;list-style:none}.recipe-preview-ingredients-quick li{margin-bottom:6px;font-size:14px;color:#555;position:relative;padding-left:12px}.recipe-preview-ingredients-quick li:before{content:"•";position:absolute;left:0;color:var(--pastell-green);font-weight:700}.recipe-preview-ingredients-quick .more-ingredients{color:var(--pastell-green);font-style:italic;margin-top:8px}.recipe-preview-main-section{grid-column:1;grid-row:2;padding:0 4px;overflow-y:auto;min-height:0}.recipe-preview-title{margin:0 0 8px;font-size:24px;color:#333;font-weight:600}.recipe-preview-description{margin:0 0 12px;color:#666;font-size:15px;line-height:1.5}.recipe-preview-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.tag-pill{font-size:12px;padding:4px 10px;border-radius:999px;font-weight:500}.recipe-preview-first-step{background:#f8f9fa;padding:16px;border-radius:12px;border-left:4px solid var(--pastell-green)}.recipe-preview-first-step h4{margin:0 0 8px;font-size:14px;color:var(--pastell-green);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.recipe-preview-first-step p{margin:0 0 8px;color:#555;font-size:14px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.recipe-preview-first-step .more-steps{color:#666;font-size:13px;font-style:italic}.recipe-preview-action-section{grid-column:2;grid-row:2;display:flex;justify-content:flex-end;align-items:flex-end;padding-bottom:8px}.recipe-preview-cook-button{background:var(--pastell-green);color:#fff;border:none;border-radius:12px;padding:14px 32px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #609e7c66;text-transform:lowercase;display:flex;align-items:center;gap:10px}.recipe-preview-cook-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #609e7c99}.recipe-preview-cook-button:hover .chef-hat{animation:pulse .5s ease-in-out infinite}.chef-hat{width:32px;height:32px;display:inline-block;filter:brightness(0) invert(1)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.recipe-preview-loading,.recipe-preview-error{padding:40px;text-align:center;font-size:16px;color:#666}.recipe-preview-error{color:#d32f2f}@media(max-width:768px){.recipe-preview-modal{max-height:95dvh;border-radius:8px}.recipe-preview-header,.recipe-preview-content,.recipe-preview-footer{padding:16px}.recipe-preview-title{font-size:20px}.recipe-preview-description{font-size:14px}}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}:root{--header-height: clamp(56px, 10vw, 100px);--logo-icon-size: clamp(32px, 6vw, 54px);--logo-font-size: clamp(1.2rem, 3.5vw, 2.2rem);--dropdown-top: 90%}.header{height:var(--header-height);background:var(--dark-green);display:flex;align-items:center;padding:0 clamp(12px,4vw,30px);justify-content:space-between;position:relative;z-index:100;box-shadow:0 4px 15px #0003}.header__logo{display:flex;align-items:center}.header__logo-link{text-decoration:none;display:flex;align-items:center;gap:clamp(8px,2vw,18px)}.header__logo-icon{height:var(--logo-icon-size);width:var(--logo-icon-size);padding:clamp(3px,.8vw,6px);background:var(--soft-white);border-radius:12px;object-fit:contain;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.header__logo-link:hover .header__logo-icon{transform:scale(1.1) rotate(-3deg)}.header__logo-text{display:flex;flex-direction:column;line-height:.85;font-size:var(--logo-font-size);font-weight:800;letter-spacing:-.02em}.header__logo-main-wrapper{display:flex;align-items:baseline}.header__logo-lassmichkochen{color:var(--white)}.header__logo-de{color:var(--pastell-green)}.header__logo-by-lebruuh{font-size:clamp(9px,2.5vw,30px);font-weight:700;font-family:Tangerine,"Cursive",Brush Script MT,sans-serif;margin-top:4px;color:var(--pastell-tuerkis);text-align:right;opacity:.85;letter-spacing:.05em}.header__menu-wrapper{position:relative}.header__menu-btn{background:transparent;border:1px solid transparent;border-radius:12px;width:clamp(44px,7vw,60px);height:clamp(44px,7vw,60px);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--soft-white);transition:all .2s ease}.header__menu-btn svg{font-size:clamp(24px,4vw,32px)}.header__menu-btn:hover{background:#ffffff1a;color:var(--white)}.header__menu-btn[aria-expanded=true]{background:var(--pastell-tuerkis);color:var(--white)}.header__dropdown{position:absolute;top:var(--dropdown-top);right:0;background:var(--white);border:1px solid var(--light-grey-1);border-radius:12px;min-width:clamp(180px,15vw,240px);box-shadow:0 10px 30px #00000040;overflow:hidden;animation:dropdownSlideIn .3s cubic-bezier(.165,.84,.44,1);z-index:1000}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.header__dropdown-user{display:flex;align-items:center;gap:12px;padding:16px;color:var(--black);font-weight:700;background:var(--soft-white)}.header__dropdown-user svg{color:var(--pastell-tuerkis)}.header__dropdown-item{width:100%;display:flex;align-items:center;gap:14px;padding:14px 18px;border:none;background:transparent;color:var(--black);font-size:clamp(13px,1.2vw,15px);font-family:inherit;cursor:pointer;text-align:left;transition:all .2s ease}.header__dropdown-item svg{font-size:20px;color:var(--medium-grey)}.header__dropdown-item:hover{background:var(--soft-white);padding-left:22px}.header__dropdown-item:hover svg{color:var(--pastell-tuerkis)}.header__dropdown-divider{height:1px;background:var(--light-grey-1);margin:0}@media(max-width:399px){.header__logo-by-lebruuh{display:none}}@media(prefers-reduced-motion:reduce){.header__dropdown{animation:none}.header__menu-btn,.header__dropdown-item,.header__logo-icon{transition:none}}.sidebar{background-color:var(--soft-white);padding:clamp(5px,.5vw,20px);overflow-y:auto;overflow-x:hidden;position:relative}.sidebar__toggle{position:fixed;bottom:20px;width:40px;height:40px;border:none;background-color:var(--primary-color, #333);color:#fff;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;z-index:100;box-shadow:0 2px 8px #0003}.sidebar__toggle:hover{opacity:.8}.sidebar__toggle--left{left:20px}.sidebar__toggle--right{right:20px}.sidebar__content{display:flex;flex-direction:column;gap:10px}.sidebar__content--collapsed{align-items:center;padding-top:10px}.collapsible-box{background:var(--white);border-radius:12px;padding:clamp(16px,calc(12px + var(--sidebar-width, 280px) * .008),28px);margin-bottom:12px;box-shadow:0 2px 6px #00000014}.collapsible-box:first-child{margin-top:0}.collapsible-box-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0;transition:all .2s ease}.collapsible-box-header:hover{opacity:.7}.collapsible-box-header:hover .collapsible-toggle{color:var(--pastell-tuerkis)}.collapsible-box-title{font-size:16px;font-weight:600;margin:0;color:var(--soft-black);letter-spacing:.3px}.collapsible-toggle{font-size:clamp(12px,calc(10px + var(--sidebar-width, 280px) * .004),18px);color:var(--medium-grey)}.collapsible-box-content{margin-top:clamp(16px,calc(12px + var(--sidebar-width, 280px) * .006),28px);font-size:clamp(14px,calc(12px + var(--sidebar-width, 280px) * .005),22px)}@media(max-width:899px){.collapsible-box{padding:14px;margin-bottom:10px}.collapsible-box-title{font-size:15px}.collapsible-toggle{font-size:11px}}@media(max-width:599px){.collapsible-box{padding:12px;margin-bottom:8px}.collapsible-box-title{font-size:14px}}.sidebar-section-header-inline{display:flex;align-items:center;gap:clamp(12px,calc(8px + var(--sidebar-width, 280px) * .008),24px);width:100%;cursor:pointer}.sidebar-section-header-icon{flex-shrink:0;color:var(--text-color)}.sidebar-section-header-icon,.sidebar-section-header-icon svg{font-size:clamp(20px,calc(16px + var(--sidebar-width, 280px) * .02),150px)!important}.sidebar-section-header-text{flex-grow:1;font-weight:500;font-size:clamp(16px,calc(14px + var(--sidebar-width, 280px) * .01),58px)}.sidebar-section-icon{display:flex;justify-content:center;align-items:center;padding:10px 0;cursor:pointer;position:relative;width:40px}.sidebar-section-icon svg{font-size:clamp(20px,calc(16px + var(--sidebar-width, 280px) * .02),150px)!important}.sidebar-section-badge{position:absolute;top:5px;right:5px;background:red;color:#fff;border-radius:50%;font-size:10px;padding:2px 5px}.sidebar-section-header-inline .sidebar-section-badge{position:relative;top:auto;right:auto;font-size:clamp(10px,calc(8px + var(--sidebar-width, 280px) * .003),14px);padding:clamp(2px,calc(1px + var(--sidebar-width, 280px) * .002),4px) clamp(5px,calc(4px + var(--sidebar-width, 280px) * .003),10px)}.sidebar-section-header-actions{margin-left:auto;display:flex;align-items:center;gap:4px}.roadmap-subtitle{margin:0 0 12px;font-size:12px;color:var(--medium-grey);font-style:italic}.roadmap-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.roadmap-item{padding:12px;background:var(--soft-white);border-radius:8px;border-left:3px solid var(--pastell-green);transition:all .2s ease}.roadmap-item:hover{background:var(--light-grey-2);border-left-color:var(--pastell-tuerkis);transform:translate(4px)}.roadmap-item-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.roadmap-item-dot{width:8px;height:8px;background:var(--pastell-green);border-radius:50%;flex-shrink:0;transition:background .2s ease}.roadmap-item:hover .roadmap-item-dot{background:var(--pastell-tuerkis)}.roadmap-item-title{margin:0;font-size:13px;font-weight:600;color:var(--soft-black);letter-spacing:.2px}.roadmap-item-content{margin:0;font-size:11px;color:var(--medium-grey);line-height:1.5;padding-left:16px}.roadmap-footer{margin:0;font-size:11px;color:var(--medium-grey);font-style:italic;text-align:center;padding-top:8px;border-top:1px solid var(--light-grey-1)}@media(max-width:899px){.roadmap-subtitle{font-size:11px}.roadmap-item{padding:10px}.roadmap-item-title{font-size:12px}.roadmap-item-content,.roadmap-footer{font-size:10px}}@media(max-width:599px){.roadmap-list{gap:10px}.roadmap-item{padding:8px}.roadmap-item-dot{width:6px;height:6px}}.feedback-modal-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.feedback-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 4px 20px #00000026;overflow:hidden;z-index:1000}.feedback-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e5e5}.feedback-modal-header h2{margin:0;font-size:20px;font-weight:600;color:#333}.feedback-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.feedback-modal-close:hover{background:#f0f0f0}.feedback-modal-form{display:flex;flex-direction:column}.feedback-modal-body{padding:24px;display:flex;flex-direction:column;gap:12px}.feedback-modal-label{font-size:14px;font-weight:500;color:#333;margin-bottom:4px}.feedback-modal-textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:100px;transition:border-color .2s ease;box-sizing:border-box}.feedback-modal-textarea:focus{outline:none;border-color:var(--pastell-green)}.feedback-modal-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.feedback-modal-counter{font-size:12px;color:#666;text-align:right}.feedback-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e5e5;background:#f8f9fa}.feedback-modal-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.feedback-modal-button-cancel{background:#fff;color:#666;border:1px solid #ddd}.feedback-modal-button-cancel:hover:not(:disabled){background:#f0f0f0}.feedback-modal-button-submit{background:var(--pastell-green);color:#fff}.feedback-modal-button-submit:hover:not(:disabled){background:#52876a;transform:translateY(-1px)}.feedback-modal-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:500px){.feedback-modal{margin:0 10px}.feedback-modal-header,.feedback-modal-body,.feedback-modal-footer{padding:16px}}.quicklinks-list{display:flex;flex-direction:column;gap:4px}.quicklinks-item{display:flex;align-items:center;gap:10px;padding:10px 8px;background:transparent;border:none;cursor:pointer;transition:background .1s ease;font-family:inherit;width:100%;text-align:left}.quicklinks-item:hover{background:var(--soft-white)}.quicklinks-item-icon{display:flex;align-items:center;justify-content:center;color:var(--medium-grey);flex-shrink:0}.quicklinks-item-icon svg{font-size:20px}.quicklinks-item-title{font-size:14px;font-weight:500;color:var(--soft-black)}@media(max-width:899px){.quicklinks-item{padding:8px 6px}.quicklinks-item-icon svg{font-size:18px}.quicklinks-item-title{font-size:13px}}@media(max-width:599px){.quicklinks-list{gap:2px}.quicklinks-item{padding:7px 5px;gap:8px}.quicklinks-item-icon svg{font-size:16px}.quicklinks-item-title{font-size:12px}}.timer-container{display:flex;flex-direction:column;gap:16px}.timer-create{display:flex;flex-direction:column;gap:8px}.timer-name-input{width:inherit;padding:8px 10px;border:1px solid var(--light-grey-1);border-radius:6px;font-size:14px;font-family:inherit;background:var(--white);color:var(--soft-black);transition:border-color .2s ease}.timer-name-input:focus{outline:none;border-color:var(--primary-color)}.timer-name-input::placeholder{color:var(--medium-grey)}.timer-time-inputs{width:inherit;display:flex;align-items:center;gap:8px}.timer-input-group{width:inherit;display:flex;flex-direction:column;align-items:center;gap:2px}.timer-input{width:50px;padding:8px;border:1px solid var(--light-grey-1);border-radius:6px;font-size:16px;font-family:inherit;text-align:center;background:var(--white);color:var(--soft-black);transition:border-color .2s ease}.timer-input::-webkit-outer-spin-button,.timer-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.timer-input:focus{outline:none;border-color:var(--primary-color)}.timer-input::placeholder{color:var(--light-grey)}.timer-input-label{font-size:11px;color:var(--medium-grey);text-transform:uppercase}.timer-separator{font-size:20px;font-weight:600;color:var(--medium-grey);margin-bottom:16px}.timer-add-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:16px;background:var(--light-grey-1);border:solid 2px var(--light-grey-1);border-radius:8px;cursor:pointer;transition:background .2s ease,opacity .2s ease;color:#fff}.timer-add-btn:hover:not(:disabled){background:var(--primary-color-dark, #3d8b40)}.timer-add-btn:disabled{opacity:.4;cursor:not-allowed}.timer-add-btn svg{font-size:22px}.timer-limit-hint{font-size:12px;color:var(--medium-grey);text-align:center}.timer-list{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--light-grey);padding-top:12px}.timer-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--soft-white);border-radius:8px;transition:background .2s ease}.timer-item.paused{background:var(--soft-white);border:1px dashed var(--light-grey)}.timer-item.finished{background:linear-gradient(135deg,#fff3e0,#ffe0b2);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.timer-item-info{display:flex;flex-direction:column;gap:2px}.timer-item-name{font-size:13px;font-weight:500;color:var(--soft-black)}.timer-item-time{font-size:20px;font-weight:600;color:var(--primary-color);font-variant-numeric:tabular-nums}.timer-item-time.finished{color:#e65100}.timer-item-actions{display:flex;align-items:center;gap:4px}.timer-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:var(--medium-grey);transition:background .15s ease,color .15s ease}.timer-action-btn:hover:not(:disabled){background:var(--light-grey);color:var(--soft-black)}.timer-action-btn:disabled{opacity:.3;cursor:not-allowed}.timer-action-btn.delete:hover:not(:disabled){background:#ffebee;color:#d32f2f}.timer-action-btn svg{font-size:20px}.timer-sound-select{display:flex;align-items:center;gap:8px;margin-top:4px}.timer-sound-dropdown{flex:1;padding:8px 10px;border:1px solid var(--light-grey);border-radius:6px;font-size:14px;font-family:inherit;background:var(--white);color:var(--soft-black);cursor:pointer;transition:border-color .2s ease}.timer-sound-dropdown:focus{outline:none;border-color:var(--primary-color)}.timer-test-btn{display:flex;align-items:center;gap:4px;padding:8px 12px;background:transparent;border:1px solid var(--light-grey);border-radius:6px;cursor:pointer;color:var(--medium-grey);font-size:13px;font-family:inherit;transition:background .15s ease,color .15s ease,border-color .15s ease}.timer-test-btn:hover{background:var(--soft-white);color:var(--soft-black);border-color:var(--medium-grey)}.timer-test-btn svg{font-size:18px}@media(max-width:899px){.timer-input{width:45px;padding:6px;font-size:14px}.timer-add-btn{width:36px;height:36px}.timer-item-time{font-size:18px}.timer-action-btn{width:28px;height:28px}.timer-action-btn svg{font-size:18px}}@media(max-width:599px){.timer-time-inputs{gap:6px}.timer-input{width:40px;padding:5px;font-size:13px}.timer-input-label{font-size:10px}.timer-separator{font-size:16px}.timer-add-btn{width:32px;height:32px}.timer-add-btn svg{font-size:18px}.timer-item{padding:8px 10px}.timer-item-name{font-size:12px}.timer-item-time{font-size:16px}.timer-action-btn{width:26px;height:26px}.timer-action-btn svg{font-size:16px}.timer-sound-dropdown{padding:6px 8px;font-size:13px}.timer-test-btn{padding:6px 10px;font-size:12px}.timer-test-btn svg{font-size:16px}}.recipe-filters{display:flex;flex-direction:column;gap:clamp(12px,1.5vw,20px)}.recipe-filters p{margin:0;font-size:clamp(12px,1vw,16px)}.reset-button{background:var(--light-grey-1);border:none;color:var(--soft-black);cursor:pointer;font-size:clamp(12px,1vw,16px);padding:clamp(6px,.8vw,10px);border-radius:10px}.filter-badge{background:var(--pastell-green);color:#fff;font-weight:600}.dropdown-wrapper{display:flex;flex-direction:column;width:100%;gap:4px}.dropdown-label{font-size:inherit;font-weight:500;color:var(--medium-grey, #2E2E2E)}.dropdown-container{position:relative;width:100%}.dropdown-field{appearance:none;width:100%;padding:.6em 2em .6em .8em;font-size:inherit;font-family:inherit;background-color:var(--white, #ffffff);border:1px solid var(--light-grey-1, #E1E1E1);border-radius:6px;cursor:pointer;outline:none;color:var(--soft-black, #1B1B1B)}.dropdown-field:focus{border-color:var(--pastell-tuerkis, #39B496)}.dropdown-icon{position:absolute;right:.8em;top:50%;transform:translateY(-50%);font-size:.7em;pointer-events:none;color:var(--medium-grey)}.input-wrapper{display:flex;flex-direction:column;width:100%;gap:4px}.input-label{font-size:inherit;font-weight:500;color:var(--medium-grey, #2E2E2E)}.input-container{width:100%}.input-field{width:100%;padding:.6em .8em;font-size:inherit;font-family:inherit;background-color:var(--white, #ffffff);border:1px solid var(--light-grey-1, #E1E1E1);border-radius:6px;outline:none;color:var(--soft-black, #1B1B1B);box-sizing:border-box;transition:border-color .2s}.input-field::placeholder{color:#aaa;font-size:.9em}.input-field:focus{border-color:var(--pastell-green, #39B496)}.input-validation-message{margin-left:8px;font-size:.75em;font-weight:500}.input-validation-message.error{color:#dc2626}.input-validation-message.warn{color:#d97706}.filter-group-container{border-bottom:1px solid var(--light-grey-1, #E1E1E1);width:100%;margin-bottom:8px}.filter-group-header{justify-content:left;align-items:center;padding-bottom:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.filter-group-title{font-size:inherit;font-weight:600;color:var(--soft-black, #1B1B1B)}.filter-group-content{padding:0 0 16px;display:flex;flex-direction:column;gap:12px}.filter-group-content p{margin:0;font-size:clamp(12px,1vw,16px)}.toggle-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%;cursor:pointer;padding:4px 0;-webkit-user-select:none;user-select:none}.toggle-switch{width:2.8em;height:1.5em;background-color:var(--light-grey-1, #E1E1E1);border-radius:1.5em;position:relative;transition:background-color .3s ease;flex-shrink:0}.toggle-switch.is-checked{background-color:var(--pastell-green)}.toggle-handle{width:1.2em;height:1.2em;background-color:#fff;border-radius:50%;position:absolute;top:.15em;left:.15em;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000001a}.toggle-switch.is-checked .toggle-handle{transform:translate(1.3em)}.ingredient-filter-selector{display:flex;flex-direction:column;gap:8px}.ingredient-filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.ingredient-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--pastell-green);color:var(--white);border-radius:16px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.ingredient-filter-chip:hover{background:var(--pastell-tuerkis);transform:scale(1.05)}.ingredient-filter-chip-name{line-height:1}.ingredient-filter-chip-remove{font-size:18px;line-height:1;font-weight:700}.ingredient-filter-add-btn{padding:8px 12px;background:var(--soft-white);border:1px dashed var(--light-grey-1);border-radius:6px;color:var(--soft-black);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:Montserrat,sans-serif;text-align:left}.ingredient-filter-add-btn:hover{background:var(--light-grey-2);border-color:var(--pastell-tuerkis);color:var(--pastell-tuerkis)}.ingredient-filter-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.ingredient-filter-modal-content{background:var(--white);border-radius:12px;padding:24px;max-width:500px;width:100%;max-height:80dvh;display:flex;flex-direction:column;gap:16px;position:relative;box-shadow:0 4px 12px #00000026}.ingredient-filter-modal-close{position:absolute;top:16px;right:16px;background:transparent;border:none;font-size:28px;color:var(--medium-grey);cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.ingredient-filter-modal-close:hover{background:var(--soft-white);color:var(--soft-black)}.ingredient-filter-modal-title{margin:0;font-size:18px;font-weight:600;color:var(--soft-black)}.ingredient-filter-search-wrapper{position:relative}.ingredient-filter-search-input{width:100%;padding:10px 12px;border:1px solid var(--light-grey-1);border-radius:6px;font-size:14px;font-family:Montserrat,sans-serif;outline:none;transition:all .2s ease;background:var(--soft-white)}.ingredient-filter-search-input:focus{border-color:var(--pastell-tuerkis);background:var(--white)}.ingredient-filter-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.ingredient-filter-results{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:6px;max-height:300px}.ingredient-filter-hint{padding:16px;text-align:center;color:var(--medium-grey);font-size:13px;font-style:italic}.ingredient-filter-result-item{padding:10px 12px;background:var(--soft-white);border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--soft-black)}.ingredient-filter-result-item:hover{background:var(--light-grey-2)}.ingredient-filter-result-item.added{background:var(--pastell-green);color:var(--white)}.ingredient-added-badge{font-size:16px;font-weight:700}.ingredient-filter-done-btn{width:100%;padding:12px;background:var(--pastell-tuerkis);color:var(--white);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:Montserrat,sans-serif}.ingredient-filter-done-btn:hover{background:var(--pastell-blue);transform:translateY(-2px)}@media(max-width:599px){.ingredient-filter-modal-overlay{padding:10px}.ingredient-filter-modal-content{padding:20px;max-height:90dvh}.ingredient-filter-modal-title{font-size:16px}.ingredient-filter-chip{font-size:11px;padding:5px 10px}}.sidebar-section{font-family:var(--playpen-font)}.recipe-servings-wrapper{display:flex;flex-direction:column;align-items:center;margin-bottom:clamp(12px,calc(8px + var(--sidebar-width, 280px) * .008),24px);padding-bottom:clamp(12px,calc(8px + var(--sidebar-width, 280px) * .008),24px);border-bottom:1px solid rgba(0,0,0,.1)}.recipe-servings-control{display:flex;align-items:center;justify-content:center;gap:clamp(8px,calc(4px + var(--sidebar-width, 280px) * .01),20px)}.servings-label{font-size:clamp(12px,calc(10px + var(--sidebar-width, 280px) * .006),20px);color:var(--medium-grey);margin-top:clamp(8px,calc(6px + var(--sidebar-width, 280px) * .005),16px);font-weight:500}.servings-btn{--btn-size: clamp(36px, calc(28px + var(--sidebar-width, 280px) * .02), 80px);width:var(--btn-size);height:var(--btn-size);border-radius:50%;border:none;background:var(--pastell-green);color:#fff;font-size:clamp(18px,calc(14px + var(--sidebar-width, 280px) * .012),36px);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,transform .1s,opacity .2s;flex-shrink:0}.servings-btn:hover:not(:disabled){background:var(--pastell-green-dark, #27ae60);transform:scale(1.05)}.servings-btn:active:not(:disabled){transform:scale(.95)}.servings-btn:disabled{opacity:.4;cursor:not-allowed}.servings-display{--display-size: clamp(50px, calc(40px + var(--sidebar-width, 280px) * .03), 120px);width:var(--display-size);height:var(--display-size);border-radius:50%;background:var(--light-grey-1, #f5f5f5);display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.servings-number{font-size:clamp(18px,calc(14px + var(--sidebar-width, 280px) * .015),42px);font-weight:700;color:var(--soft-black);line-height:1}.recipe-ingredients-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}.recipe-ingredient-item{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(4px,calc(2px + var(--sidebar-width, 280px) * .004),10px);padding:clamp(6px,calc(4px + var(--sidebar-width, 280px) * .004),12px) 0;line-height:1.4;border-bottom:1px solid rgba(0,0,0,.08)}.recipe-ingredient-item:last-child{border-bottom:none}.recipe-ingredient-amount{font-weight:600;color:var(--pastell-green);font-size:clamp(13px,calc(11px + var(--sidebar-width, 280px) * .005),20px);white-space:nowrap}.recipe-ingredient-icon{width:clamp(16px,calc(12px + var(--sidebar-width, 280px) * .008),28px);height:clamp(16px,calc(12px + var(--sidebar-width, 280px) * .008),28px);object-fit:contain;flex-shrink:0}.recipe-ingredient-name{color:var(--soft-black);font-size:clamp(14px,calc(12px + var(--sidebar-width, 280px) * .005),22px);word-wrap:break-word;overflow-wrap:break-word}.recipe-no-ingredients{color:var(--medium-grey);font-style:italic;font-size:14px;margin:0;text-align:left;padding:6px 0}.recipe-ingredients-actions{display:flex;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid rgba(0,0,0,.1)}.recipe-ingredients-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s,transform .1s;background:var(--light-grey);color:var(--soft-black)}.recipe-ingredients-btn:hover{background:var(--medium-grey);color:var(--white)}.recipe-ingredients-btn:active{transform:scale(.98)}.recipe-ingredients-btn-bring{background:#2ecc71;color:#fff}.recipe-ingredients-btn-bring:hover{background:#27ae60;color:#fff}.recipe-loading{color:var(--medium-grey);font-style:italic;text-align:center;padding:20px 0}.ingredients-action-bar{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.08)}.action-bar-btn{background:var(--pastell-green);border:1px solid rgba(0,0,0,.1);color:var(--soft-white);cursor:pointer;padding:6px 10px;border-radius:6px;display:flex;gap:18px;align-items:center;justify-content:center;transition:color .2s,background .2s,border-color .2s,gap .3s ease}.action-bar-btn:hover{color:var(--pastell-green);border-color:var(--pastell-green);background:#2ecc710d}.ingredients-action-bar--with-order{flex-direction:row;gap:0}.ingredients-action-bar--with-order>.action-bar-btn{flex:1}.ingredients-action-bar--with-order .action-bar-btn--order{overflow:hidden;min-width:0;opacity:1;margin-right:8px;transition:flex .3s ease .25s,opacity .3s ease .25s,padding .3s ease .25s,border-width .3s ease .25s,margin .3s ease .25s}.ingredients-action-bar--with-order .action-bar-btn--order-hidden{flex:0 0 0px;opacity:0;padding:0;border-width:0;margin:0;pointer-events:none;transition:flex .2s ease,opacity .2s ease,padding .2s ease,border-width .2s ease,margin .2s ease}.ingredients-action-bar--with-order .action-bar-btn--edit-compact{flex:0 0 auto}.action-bar-btn-label{display:inline-block;max-width:200px;overflow:hidden;white-space:nowrap;transition:max-width .3s ease .25s,opacity .3s ease .25s;opacity:1}.action-bar-btn--edit-compact{gap:0}.action-bar-btn--edit-compact .action-bar-btn-label{max-width:0;opacity:0;transition:max-width .3s ease,opacity .3s ease}.recipe-ingredients-grouped{display:flex;flex-direction:column;gap:8px}.category-group{border:1px solid rgba(0,0,0,.08);border-radius:8px;overflow:hidden}.category-header{display:flex;align-items:center;width:100%;padding:10px 12px;background:var(--light-grey-1, #f8f8f8);border:none;cursor:pointer;font-size:clamp(13px,calc(11px + var(--sidebar-width, 280px) * .005),18px);font-weight:600;color:var(--soft-black);transition:background .2s}.category-header:hover{background:var(--light-grey, #f0f0f0)}.category-count{font-size:clamp(11px,calc(9px + var(--sidebar-width, 280px) * .004),15px);color:var(--medium-grey);font-weight:400;margin-left:8px;margin-right:auto}.category-group .recipe-ingredients-list{padding:4px 12px}.recipe-ingredient-optional{font-style:italic}.optional-badge{font-size:10px;background:var(--light-grey);color:var(--medium-grey);padding:2px 6px;border-radius:4px;margin-left:6px;font-style:normal}.edit-mode-header{display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.1)}.edit-mode-title{font-size:clamp(14px,1.3rem,40px);font-weight:600;color:var(--soft-black)}.edit-mode-actions{display:flex;gap:8px}.edit-action-btn{display:flex;align-items:center;gap:4px;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.edit-action-btn:disabled{opacity:.6;cursor:not-allowed}.edit-action-btn--cancel{background:var(--light-grey);color:var(--soft-black)}.edit-action-btn--cancel:hover:not(:disabled){background:var(--medium-grey);color:#fff}.edit-action-btn--save{background:var(--pastell-green);color:#fff;flex:1}.edit-action-btn--save:hover:not(:disabled){background:var(--pastell-green-dark, #27ae60)}.edit-action-btn--publish{background:#3498db;color:#fff;width:100%;justify-content:center}.edit-action-btn--publish:hover:not(:disabled){background:#2980b9}.recipe-ingredients-list--edit{gap:4px}.recipe-ingredient-item--edit{padding:10px 12px;background:var(--light-grey-1, #f8f8f8);border-radius:6px;border-bottom:none;display:flex;flex-direction:column;gap:8px}.edit-inputs-row{display:flex;gap:8px;width:100%}.edit-name-row{display:flex;align-items:flex-start;gap:8px;width:100%}.edit-ingredient-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.edit-order-buttons{display:flex;flex-direction:column;gap:2px}.order-btn{width:24px;height:20px;padding:0;border:1px solid rgba(0,0,0,.15);border-radius:4px;background:#fff;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:background .2s}.order-btn:hover:not(:disabled){background:var(--light-grey)}.order-btn:disabled{opacity:.3;cursor:not-allowed}.edit-amount-controls{display:flex;align-items:center;gap:2px}.amount-btn{width:28px;height:28px;padding:0;border:none;border-radius:50%;background:var(--pastell-green);color:#fff;cursor:pointer;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .1s}.amount-btn--small{width:26px;height:26px;font-size:10px}.amount-btn:hover{background:var(--pastell-green-dark, #27ae60);transform:scale(1.05)}.amount-btn:active{transform:scale(.95)}.edit-amount-input{flex:2;min-width:0;padding:8px 10px;border:1px solid rgba(0,0,0,.15);border-radius:6px;font-size:14px;text-align:left;box-sizing:border-box;-moz-appearance:textfield;appearance:textfield}.edit-amount-input::-webkit-outer-spin-button,.edit-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.edit-unit-input{flex:1;min-width:0;padding:8px 10px;border:1px solid rgba(0,0,0,.15);border-radius:6px;font-size:14px;box-sizing:border-box}.edit-ingredient-name{flex:1;font-size:14px;font-weight:500;color:var(--soft-black);word-wrap:break-word;overflow-wrap:break-word;line-height:1.4}.edit-optional-toggle{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--medium-grey);cursor:pointer}.edit-optional-toggle input{cursor:pointer}.edit-delete-btn{background:transparent;border:none;color:#e74c3c;cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;margin-left:auto}.edit-delete-btn:hover{background:#e74c3c1a}.add-ingredient-btn{margin-bottom:12px;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;margin-top:12px;background:transparent;border:2px dashed var(--medium-grey);border-radius:8px;color:var(--medium-grey);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.add-ingredient-btn:hover{border-color:var(--pastell-green);color:var(--pastell-green);background:#2ecc710d}.add-ingredient-form{margin-bottom:12px;padding:12px;background:var(--light-grey-1, #f8f8f8);border-radius:8px}.add-ingredient-search{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid rgba(0,0,0,.15);border-radius:6px;font-size:14px;margin-bottom:8px}.add-ingredient-search:focus{outline:none;border-color:var(--pastell-green)}.add-ingredient-results{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;margin-bottom:8px}.add-ingredient-result{padding:8px 10px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:4px;text-align:left;font-size:13px;cursor:pointer;transition:background .2s}.add-ingredient-result:hover{background:var(--pastell-green-light, #e8f5e9)}.add-ingredient-cancel{width:clamp(15px,2rem,50px);padding:8px;margin-bottom:8px;background:var(--pastell-green);color:var(--soft-white);border:none;border-radius:6px;cursor:pointer;transition:background .2s}.add-ingredient-cancel:hover{background:var(--medium-grey);color:#fff}.recipe-ingredients-list--chefs-order .recipe-ingredient-item{padding-left:0}.recipe-ingredient-drag-handle{color:var(--pastell-green);cursor:grab;flex-shrink:0;transition:color .2s}.recipe-ingredient-drag-handle:active{cursor:grabbing}.recipe-ingredient-drag-handle--readonly{color:var(--medium-grey);cursor:default}.recipe-ingredient-item--draggable{cursor:grab;transition:transform .15s ease,background .15s ease,opacity .15s ease;-webkit-user-select:none;user-select:none}.recipe-ingredient-item--draggable:hover{background:var(--light-grey-1, #f8f8f8)}.recipe-ingredient-item--draggable:active{cursor:grabbing}.recipe-ingredient-item--dragging{opacity:.4;background:var(--pastell-green-light, #e8f5e9);transform:scale(.98)}.recipe-ingredient-item--touch-dragging{opacity:.9;background:var(--pastell-green-light, #e8f5e9);box-shadow:0 4px 12px #00000026;transform:scale(1.02);transition:none}.recipe-ingredients-list--chefs-order .recipe-ingredient-item{padding-left:0;transition:transform .15s ease}.recipe-servings-wrapper--disabled{opacity:.5;pointer-events:none}.recipe-ingredients-list--inline-edit{gap:4px}.recipe-ingredient-item--inline-edit{display:flex;flex-direction:column;gap:6px;padding:clamp(10px,calc(8px + var(--sidebar-width, 280px) * .004),16px) 0;line-height:1.4;border-bottom:1px solid rgba(0,0,0,.08)}.recipe-ingredient-item--inline-edit:last-child{border-bottom:none}.inline-edit-row-1{display:flex;align-items:center;gap:8px}.inline-edit-row-2{display:flex;align-items:center;gap:clamp(4px,calc(2px + var(--sidebar-width, 280px) * .004),10px)}.inline-edit-amount{width:clamp(45px,calc(35px + var(--sidebar-width, 280px) * .02),70px);padding:4px 6px;border:1px solid var(--pastell-green);border-radius:4px;font-size:clamp(13px,calc(11px + var(--sidebar-width, 280px) * .005),20px);font-weight:600;color:var(--pastell-green);text-align:center;background:#2ecc710d;-moz-appearance:textfield;appearance:textfield}.inline-edit-amount::-webkit-outer-spin-button,.inline-edit-amount::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inline-edit-amount:focus{outline:none;border-color:var(--pastell-green);box-shadow:0 0 0 2px #2ecc7126}.inline-edit-unit{width:clamp(50px,calc(40px + var(--sidebar-width, 280px) * .02),80px);padding:4px 6px;border:1px solid rgba(0,0,0,.15);border-radius:4px;font-size:clamp(13px,calc(11px + var(--sidebar-width, 280px) * .005),20px);color:var(--soft-black)}.inline-edit-unit:focus{outline:none;border-color:var(--pastell-green);box-shadow:0 0 0 2px #2ecc7126}.inline-edit-delete-btn{background:transparent;border:none;color:var(--medium-grey);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s;margin-left:auto;flex-shrink:0}.inline-edit-delete-btn:hover{color:#e74c3c;background:#e74c3c1a}.action-bar-btn--cancel{background:var(--light-grey);color:var(--soft-black);border-color:transparent}.action-bar-btn--cancel:hover{background:var(--medium-grey);color:#fff;border-color:transparent}.action-bar-btn--save{background:var(--pastell-green);color:#fff;border-color:transparent;flex:1}.action-bar-btn--save:hover:not(:disabled){background:var(--pastell-green-dark, #27ae60);border-color:transparent}.action-bar-btn--save:disabled{opacity:.6;cursor:not-allowed}.action-bar-btn--order{background:transparent;color:var(--medium-grey);border:1px solid rgba(0,0,0,.12)}.action-bar-btn--order:hover{color:var(--pastell-green);border-color:var(--pastell-green);background:#2ecc710d}.action-bar-btn--order-active{background:var(--pastell-green);color:#fff;border-color:var(--pastell-green)}.action-bar-btn--order-active:hover{background:var(--pastell-green-dark, #27ae60);border-color:var(--pastell-green-dark, #27ae60);color:#fff}.sort-control-wrapper{position:relative;display:flex;align-items:center;gap:8px;margin-bottom:12px;transition:opacity .2s}.sort-control-wrapper--disabled{opacity:.5;pointer-events:none}.sort-direction-icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;padding:8px;border-radius:6px;color:var(--medium-grey);transition:color .2s,background .2s}.sort-direction-icon-btn:hover:not(:disabled){color:var(--pastell-green);background:#2ecc7114}.sort-direction-icon-btn:disabled{cursor:not-allowed;opacity:.5}.sort-label-crown{color:var(--pastell-green);flex-shrink:0}.sort-label-wrapper{position:relative;width:100%}.sort-label-btn{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:8px 12px;background:var(--soft-white, #ffffff);border:1.5px solid #e0e0e0;border-radius:8px;color:var(--dark-grey, #333);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000d}.sort-label-btn:hover{border-color:var(--pastell-green);background:#fff;box-shadow:0 2px 8px #2ecc7126}.sort-label-btn.is-active{border-color:var(--pastell-green);box-shadow:0 0 0 3px #2ecc711a;outline:none}.sort-label-btn--disabled,.sort-label-btn:disabled{cursor:not-allowed;opacity:.7}.sort-label-btn--disabled:hover,.sort-label-btn:disabled:hover{border-color:#e0e0e0;box-shadow:0 1px 2px #0000000d}.dropdown-arrow{display:flex;align-items:center;margin-left:10px;transition:transform .3s ease;color:var(--medium-grey)}.dropdown-arrow.is-open{transform:rotate(180deg);color:var(--pastell-green)}.sort-icon-wrapper{position:relative}.sort-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;width:100%;color:var(--soft-white);background:#fff;border-radius:10px;box-shadow:0 8px 20px #00000026;border:1px solid rgba(0,0,0,.08);z-index:1000;padding:6px;display:flex;flex-direction:column;gap:2px;animation:dropdownSlideDown .2s ease-out;transform-origin:top}@keyframes dropdownSlideDown{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}.sort-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border:none;background:transparent;text-align:left;font-size:14px;cursor:pointer;border-radius:6px;transition:background .2s}.sort-option:last-child{margin-bottom:0}.sort-option--active{background:#2ecc7114!important;color:var(--pastell-green)}.sort-option--active:hover{background:var(--pastell-green-light, #e8f5e9)}.sort-option--soon{color:var(--medium-grey);cursor:not-allowed;opacity:.6}.sort-option-content{display:flex;align-items:center;gap:8px}.option-icon{display:flex;align-items:center;justify-content:center;color:var(--pastell-green);font-size:16px;width:18px}.option-label{flex:1}.new-badge{background:var(--pastell-green);color:#fff;font-size:9px;font-weight:800;padding:1px 4px;border-radius:4px;letter-spacing:.3px;line-height:1}.soon-badge{background:#f0f0f0;color:#999;font-weight:700;letter-spacing:.5px;padding:2px 5px}.sort-direction-icon-btn{background-color:var(--pastell-green);color:var(--soft-white);border:none;border-radius:6px;padding:6px 10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.sort-direction-icon-btn svg rect,.sort-direction-icon-btn svg path{transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1)}.sort-direction-icon-btn svg .bar-top{width:6px}.sort-direction-icon-btn svg .bar-mid{width:12px}.sort-direction-icon-btn svg .bar-bot{width:18px}.sort-direction-icon-btn--desc svg .bar-top{width:18px}.sort-direction-icon-btn--desc svg .bar-mid{width:12px}.sort-direction-icon-btn--desc svg .bar-bot{width:6px}.sort-direction-icon-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}:root{--protein-color: #e74c3c;--carbs-color: #f39c12;--fat-color: #9b59b6;--fiber-color: #27ae60;--sugar-color: #e67e22;--saturated-color: #8e44ad;--vitamin-color: #3498db;--mineral-color: #1abc9c}.nutrition-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:12px;color:var(--medium-grey)}.nutrition-loading-spinner{width:24px;height:24px;border:3px solid var(--light-grey);border-top-color:var(--pastell-green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.nutrition-empty{display:flex;flex-direction:column;align-items:center;padding:24px 16px;text-align:center}.nutrition-empty-icon{font-size:48px!important;color:var(--pastell-green);margin-bottom:12px;opacity:.8}.nutrition-empty-text{font-size:14px;color:var(--medium-grey);margin:0 0 16px;line-height:1.4}.nutrition-calculate-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:var(--pastell-green);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.nutrition-calculate-btn:hover:not(:disabled){background:var(--pastell-green-dark, #27ae60);transform:translateY(-1px)}.nutrition-calculate-btn:disabled{opacity:.7;cursor:not-allowed}.nutrition-btn-icon{font-size:18px!important}.nutrition-btn-icon--spinning{animation:spin 1s linear infinite}.nutrition-content{padding:8px 0}.nutrition-carousel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.nutrition-carousel-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1.5px solid var(--light-grey);border-radius:6px;color:var(--medium-grey);cursor:pointer;transition:all .2s}.nutrition-carousel-btn:hover:not(:disabled){border-color:var(--pastell-green);color:var(--pastell-green)}.nutrition-carousel-btn:disabled{opacity:.5;cursor:not-allowed}.nutrition-carousel-title{font-size:14px;font-weight:600;color:var(--dark-grey)}.nutrition-carousel-dots{display:flex;justify-content:center;gap:6px;margin-bottom:16px}.nutrition-carousel-dot{width:8px;height:8px;border-radius:50%;border:none;background:var(--light-grey);cursor:pointer;transition:all .2s;padding:0}.nutrition-carousel-dot:hover:not(:disabled){background:var(--medium-grey)}.nutrition-carousel-dot--active{background:var(--pastell-green);width:20px;border-radius:4px}.nutrition-carousel-dot:disabled{cursor:not-allowed}.nutrition-carousel-content{min-height:120px}.nutrition-overview{display:flex;flex-direction:column;align-items:center;gap:16px}.nutrition-stat{display:flex;flex-direction:column;align-items:center;text-align:center}.nutrition-stat--large .nutrition-stat-value{font-size:36px;font-weight:700;color:var(--pastell-green)}.nutrition-stat--large .nutrition-stat-label{font-size:14px;color:var(--medium-grey);text-transform:uppercase;letter-spacing:1px}.nutrition-overview-macros{display:flex;justify-content:center;gap:24px;width:100%}.nutrition-overview-macros .nutrition-stat-value{font-size:18px;font-weight:600;color:var(--dark-grey)}.nutrition-overview-macros .nutrition-stat-label{font-size:11px;color:var(--medium-grey)}.nutrition-grid{display:flex;flex-direction:column;gap:12px}.nutrition-bar-container{display:flex;flex-direction:column;gap:4px}.nutrition-bar-header{display:flex;justify-content:space-between;align-items:center}.nutrition-bar-label{font-size:12px;color:var(--dark-grey)}.nutrition-bar-value{font-size:12px;font-weight:600;color:var(--dark-grey)}.nutrition-bar-track{height:6px;background:var(--light-grey);border-radius:3px;overflow:hidden}.nutrition-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.nutrition-recalculate-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:16px;padding:10px;background:transparent;border:1.5px solid var(--light-grey);border-radius:6px;font-size:13px;color:var(--medium-grey);cursor:pointer;transition:all .2s}.nutrition-recalculate-btn:hover:not(:disabled){border-color:var(--pastell-green);color:var(--pastell-green)}.nutrition-recalculate-btn:disabled{opacity:.6;cursor:not-allowed}.nutrition-recalculate-btn .nutrition-btn-icon{font-size:16px!important}.nutrition-portion-hint{margin:12px 0 0;font-size:11px;color:var(--medium-grey);text-align:center;font-style:italic}.layout{display:flex;flex:1;width:100%;min-height:0;background-color:#52377a}.main-content{height:inherit;width:inherit;font-size:clamp(20px,2.5vw,2rem);padding:8px;overflow-y:auto;overflow-x:hidden;min-height:0;-webkit-overflow-scrolling:touch}.loader-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;min-height:400px}.loader-spinner{width:50px;height:50px;border:4px solid rgba(0,0,0,.1);border-left-color:#333;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.guest-warning-banner{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:12px 16px;margin-bottom:16px;font-size:14px;color:#92400e;display:flex;align-items:center;gap:8px}.guest-warning-banner a{color:#d97706;font-weight:600;text-decoration:underline}.guest-warning-banner a:hover{color:#b45309}.recipe-action-buttons{display:flex;gap:8px;align-items:center}.share-menu-container{position:relative}.share-menu{position:absolute;top:100%;left:0;margin-top:8px;background:#fff;border:1px solid var(--light-grey-1);border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:hidden;z-index:100;min-width:200px}.share-menu-item{display:block;width:100%;padding:12px 16px;border:none;background:#fff;text-align:left;font-size:14px;font-weight:500;color:var(--soft-black);cursor:pointer;transition:background-color .2s ease;font-family:inherit}.recipe-header-publish-text{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba;padding:10px;margin-bottom:15px;border-radius:4px;font-size:14px;display:flex;justify-content:space-between}.recipe-header-publish-text button{background-color:var(--pastell-green);color:#fff;border:none;padding:5px 10px;border-radius:4px;cursor:pointer}.recipe-edit-options{font-size:clamp(14px,1.5vw,16px);height:clamp(40px,4vw,50px);width:auto;align-items:center;display:flex;gap:clamp(15px,1vw,50px)}.vertical-line{width:clamp(6px,.8vw,20px);height:clamp(6px,.8vw,20px);border-radius:50%;background-color:var(--soft-black);border:none;margin:0 10px}.btn-flat{background-color:var(--pastell-green);color:#fff;border:none;padding:10px 20px;font-size:16px;font-weight:500;border-radius:6px;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.btn-flat:active{transform:scale(.98)}.btn-flat-outline{background-color:transparent;color:#64748b;border:1px solid #cbd5e1}.sections-grid{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;align-items:flex-start}@media print{.recipe-action-buttons,.recipe-edit-options,.favorite-button,.image-delete-button,.recipe-step-checkbox,.recipe-banner{display:none!important}.recipe-step{page-break-inside:avoid;break-inside:avoid;margin-bottom:20px;opacity:1!important}.recipe-step.completed{opacity:1!important}.recipe-step-body{display:block!important;visibility:visible!important}.recipe-step+.recipe-step{page-break-before:auto}.recipe-steps{page-break-before:auto}.recipe-step-header{page-break-after:avoid;break-after:avoid}.recipe-detail{padding:0}.recipe-header{margin-bottom:20px}.recipe-title{font-size:24pt;margin-bottom:10px}.recipe-description{font-size:12pt;margin-bottom:15px}.recipe-tags{margin-bottom:20px}.tag-chip{border:1px solid #333;padding:4px 8px;margin-right:8px;font-size:10pt}.recipe-ingredients-mobile{display:block!important;margin-bottom:30px;page-break-after:avoid}.recipe-section-title{font-size:16pt;margin-bottom:10px}.ingredients-list{font-size:11pt}.recipe-step-title{font-size:14pt;font-weight:700}.recipe-step-body{font-size:11pt;line-height:1.6}}.recipe-banner{width:100%}.recipe-banner-image{width:100%;height:auto;object-fit:cover;display:block}.image-delete-button{position:absolute;top:12px;right:12px;background-color:#0009;color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,transform .1s ease;z-index:10}.image-delete-button:hover{background-color:#dc2626e6;transform:scale(1.05)}.image-delete-button:active{transform:scale(.95)}.recipe-banner-upload{min-height:200px;background-color:var(--soft-white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease}.recipe-banner-upload:hover{background-color:var(--light-grey-1)}.upload-content{text-align:center;color:#999;font-size:14px}.upload-hint{margin-top:8px;font-size:12px;color:#666}.recipe-banner-placeholder{min-height:200px;background-color:var(--soft-white);display:flex;align-items:center;justify-content:center}.recipe-banner-placeholder .upload-content{text-align:center;color:#999;font-size:14px}@media print{.recipe-banner,.image-delete-button{display:none!important}}.section{background:var(--soft-white);border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:20px;transition:width .3s ease,padding .3s ease,opacity .3s ease;box-sizing:border-box}.section--full{width:100%}.section--half{width:calc(50% - 8px)}.section--minimized{width:auto;display:inline-flex;padding:10px 18px;border-radius:999px;cursor:pointer}.section--static{padding:8px 20px 20px}.section-content--static{margin-top:0}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-header--clickable{cursor:pointer}.section-header-left{display:flex;align-items:center;gap:10px;min-width:0}.section-header-icon{display:flex;align-items:center;color:var(--pastell-green);flex-shrink:0}.section-header-icon .MuiSvgIcon-root{font-size:24px}.section-header-title{margin:0;font-size:16px;font-weight:600;color:var(--soft-black);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.section-header-buttons{display:flex;gap:4px;flex-shrink:0}.section-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--medium-grey);cursor:pointer;padding:0;transition:background .15s ease,color .15s ease}.section-btn:hover{background:var(--light-grey-1);color:var(--soft-black)}.section-btn--active{background:var(--pastell-green);color:#fff}.section-btn--active:hover{background:var(--pastell-green);color:#fff;opacity:.85}.section--minimized .section-header-buttons{display:none}.section-drag-handle{display:flex;align-items:center;cursor:grab;color:var(--medium-grey);flex-shrink:0;transition:color .15s ease}.section-drag-handle:hover{color:var(--soft-black)}.section-drag-handle:active{cursor:grabbing}.section--dragging{opacity:.4}.section--drag-over{border-top:3px solid var(--pastell-green)}.section--reorder:not(.section--static){outline:1px dashed var(--light-grey-1);outline-offset:2px}.section-content{margin-top:16px}@media(max-width:768px){.section--half{width:100%}.section-btn--half-toggle,.section-btn--full-toggle{display:none}}@media print{.section{width:100%!important;box-shadow:none;border-radius:0;padding:0;background:transparent;page-break-inside:avoid;break-inside:avoid}.section--minimized{display:block!important;width:100%!important;padding:0;border-radius:0}.section-header-buttons,.section-drag-handle{display:none!important}.section-content{display:block!important}.section-header-title{font-size:14pt;font-weight:700}.section--reorder{outline:none!important}}.action-buttons-section{padding:10px 12px!important}.action-buttons-grid{display:flex;flex-wrap:wrap;gap:4px}.action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 0;min-width:38px;padding:6px 8px;border-radius:8px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;color:var(--soft-black);gap:2px}.action-btn:hover{background-color:var(--light-grey-1)}.action-btn:active{transform:scale(.92);background-color:var(--light-grey-2, #ddd)}.action-btn svg{font-size:20px}.action-btn-label{font-size:10px;font-weight:500;color:var(--medium-grey);line-height:1;white-space:nowrap}.action-btn--active{background-color:var(--pastell-tuerkis);color:#fff}.action-btn--active .action-btn-label{color:#fff}.action-btn--active:hover{background-color:var(--pastell-tuerkis);opacity:.85}.action-btn-danger:hover{background-color:#fef2f2;color:var(--error-color)}.action-btn-danger:hover .action-btn-label{color:var(--error-color)}.action-btn-danger:active{background-color:#fee2e2;color:var(--error-color)}.share-menu-container{position:relative;display:flex;flex:1 1 0}.share-menu-container .action-btn{flex:1 1 0}.share-menu{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--white);border:1px solid var(--light-grey-1);border-radius:10px;box-shadow:0 4px 16px #0000001f;overflow:hidden;z-index:100;min-width:200px}.share-menu-item{display:block;width:100%;padding:12px 16px;border:none;background:var(--white);text-align:left;font-size:14px;font-weight:500;color:var(--soft-black);cursor:pointer;transition:background-color .2s ease;font-family:inherit}.share-menu-item:hover{background-color:var(--soft-white)}.share-menu-item:active{background-color:var(--light-grey-1)}.share-menu-item+.share-menu-item{border-top:1px solid var(--light-grey-1)}@media print{.action-buttons-section{display:none!important}}.favorite-button{border:1px solid #333;background:#fff;border-radius:999px;padding:6px 10px;font-size:13px;cursor:pointer;white-space:nowrap}.favorite-button.favorite-active{background:var(--light-grey-1);color:#ad0000;border:none}.favorite-button:disabled,.favorite-button.loading{opacity:.5;cursor:not-allowed}.recipe-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:12px}.recipe-tags .tag-chip{padding:5px 12px;border-radius:999px;font-size:13px;font-weight:500;margin:0}.tags-more-btn{background:none;border:none;padding:5px 8px;font-size:12px;color:#999;cursor:pointer;font-family:inherit}.tags-more-btn:hover{color:#666}.tag-none{color:#999;font-size:12px;font-style:italic}@media print{.favorite-button{display:none!important}.recipe-header{margin-bottom:20px}.recipe-title{font-size:24pt;margin-bottom:10px}.recipe-description{font-size:12pt;margin-bottom:15px}.recipe-tags{margin-bottom:20px}.tag-chip{border:1px solid #333;padding:4px 8px;margin-right:8px;font-size:10pt}}.heart-container{--heart-color: rgb(166, 20, 61);position:relative;width:50px;height:50px;transition:.3s}.heart-container .checkbox{position:absolute;width:100%;height:100%;opacity:0;z-index:20;cursor:pointer}.heart-container .svg-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.heart-container .svg-outline,.heart-container .svg-filled{fill:var(--heart-color);position:absolute}.heart-container .svg-filled{animation:keyframes-svg-filled 1s;display:none}.heart-container .svg-celebrate{position:absolute;animation:keyframes-svg-celebrate .5s;animation-fill-mode:forwards;display:none;stroke:var(--heart-color);fill:var(--heart-color);stroke-width:2px}.heart-container .checkbox:checked~.svg-container .svg-filled{display:block}.heart-container .checkbox:checked~.svg-container .svg-celebrate{display:block}@keyframes keyframes-svg-filled{0%{transform:scale(0)}25%{transform:scale(1.2)}50%{transform:scale(1)}}@keyframes keyframes-svg-celebrate{0%{transform:scale(0)}50%{opacity:1}to{transform:scale(1.4);opacity:0;display:none}}.recipe-ingredients-mobile{display:block}.mobile-servings-wrapper{display:flex;flex-direction:column;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(0,0,0,.1)}.mobile-servings-control{display:flex;align-items:center;justify-content:center;gap:12px}.mobile-servings-btn{width:40px;height:40px;border-radius:50%;border:none;background:var(--pastell-green);color:#fff;font-size:20px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,transform .1s,opacity .2s;flex-shrink:0}.mobile-servings-btn:hover:not(:disabled){background:var(--pastell-green-dark, #27ae60);transform:scale(1.05)}.mobile-servings-btn:active:not(:disabled){transform:scale(.95)}.mobile-servings-btn:disabled{opacity:.4;cursor:not-allowed}.mobile-servings-display{width:54px;height:54px;border-radius:50%;background:var(--light-grey-1, #f5f5f5);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-servings-number{font-size:22px;font-weight:700;color:var(--soft-black);line-height:1}.mobile-servings-label{font-size:13px;color:var(--medium-grey);margin-top:8px;font-weight:500}.recipe-section-title{margin:0 0 16px;font-size:20px;font-weight:600;color:var(--soft-black)}.ingredients-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.ingredient-item{display:flex;align-items:baseline;font-size:15px;padding-left:20px;position:relative}.ingredient-item:before{content:"•";position:absolute;left:0;color:var(--pastell-green);font-weight:700;font-size:20px}.ingredient-amount{font-weight:600;color:var(--pastell-green);min-width:60px}.ingredient-name{color:var(--soft-black)}.no-ingredients{color:var(--medium-grey);font-style:italic}@media print{.recipe-ingredients-mobile{display:block!important;margin-bottom:30px;page-break-after:avoid}.recipe-section-title{font-size:16pt;margin-bottom:10px}.ingredients-list{font-size:11pt}}.recipe-steps{display:flex;flex-direction:column;gap:16px}.recipe-step{font-size:15px;transition:all .3s ease;border-radius:12px;background:var(--soft-white);cursor:pointer;-webkit-user-select:none;user-select:none;overflow:hidden;min-height:60px}.recipe-step:hover{background:#eef7f4}.recipe-step.completed{opacity:.5;background:transparent}.recipe-step-number{float:left;display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:10px 0 8px 10px;font-weight:700;font-size:20px;color:var(--pastell-tuerkis);font-family:var(--playpen-font);border-radius:10px;background:#39b49614}.recipe-step.completed .recipe-step-number{color:var(--light-grey-1);background:#0000000a}.recipe-step-content{padding:14px 16px;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;line-height:1.6;color:var(--soft-black)}.recipe-step.completed .recipe-step-content{text-decoration:line-through;color:var(--medium-grey)}.recipe-step-check{float:right;display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:10px 10px 8px 0;padding:0;border:2px dashed rgba(57,180,150,.3);border-radius:10px;background:#39b4961a;cursor:pointer;transition:all .25s ease;position:relative}.recipe-step-check:hover{background:#39b49640;border-color:#39b49680}.recipe-step-check.checked{background:var(--pastell-tuerkis);border-color:var(--pastell-tuerkis);animation:comic-pop .4s cubic-bezier(.34,1.56,.64,1)}.comic-check-svg{width:26px;height:26px}.comic-check-path{stroke:var(--pastell-tuerkis);stroke-dasharray:30;stroke-dashoffset:30;transition:stroke-dashoffset .35s ease,stroke .2s ease}.recipe-step-check:hover .comic-check-path{stroke-dashoffset:15}.recipe-step-check.checked .comic-check-path{stroke:#fff;stroke-dashoffset:0}@keyframes comic-pop{0%{transform:scale(1)}40%{transform:scale(1.3)}70%{transform:scale(.9)}to{transform:scale(1)}}.recipe-rating-section{margin-top:12px;padding:24px 20px;border-top:2px dashed var(--light-grey-1);display:flex;flex-direction:column;align-items:center;gap:12px;transition:opacity .3s ease}.recipe-rating-section:not(.active){opacity:.45}.recipe-rating-stars{display:flex;gap:6px}.recipe-rating-star{display:flex;align-items:center;cursor:default;transition:transform .15s ease}.recipe-rating-star .recipe-star-icon{font-size:32px!important;color:var(--light-grey-1);transition:color .2s ease}.recipe-rating-star.enabled{cursor:pointer}.recipe-rating-star.enabled:hover{transform:scale(1.25)}.recipe-rating-star.filled .recipe-star-icon{color:#ffc107}.recipe-rating-hint{font-size:clamp(15px,1.3rem,40px);color:var(--medium-grey);font-family:var(--playpen-font);margin:0;text-align:center}@media print{.recipe-step-check,.recipe-rating-section{display:none!important}.recipe-step{page-break-inside:avoid;break-inside:avoid;margin-bottom:20px;opacity:1!important;background:transparent;cursor:default}.recipe-step.completed{opacity:1!important}.recipe-step.completed .recipe-step-content{text-decoration:none}.recipe-step+.recipe-step{page-break-before:auto}.recipe-steps{page-break-before:auto}.recipe-step-number{font-size:14pt;font-weight:700;float:left}.recipe-step-content{font-size:11pt;line-height:1.6}}.create-recipe-content{display:flex;flex-direction:column;align-items:center;padding:2rem;width:100%;margin:0 auto}.create-recipe-content h1{font-size:clamp(1.5rem,4vw,2.5rem);margin-bottom:1rem;text-align:center}.create-recipe-content button{flex-shrink:0;width:48px;height:48px;background:var(--pastell-green);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s ease;display:flex;align-items:center;justify-content:center}.create-recipe-content button:hover{background:#45a049}.create-recipe-content button:active{background:#3d8b40;transform:translateY(1px)}.form-content{margin:0;margin-top:2rem;padding:0;padding:2rem;display:flex;flex-direction:column;width:inherit;height:fit-content;align-items:center;justify-content:center;gap:1.5rem;font-size:clamp(1rem,2.5vw,1.25rem)}.form-content h2{text-align:center;font-size:1.5rem;margin-bottom:1rem}.stepperDiv{width:90%}.form-stepper-content-box{display:flex;flex-direction:column;align-items:center}.form-section{min-width:250px;width:100%;display:flex;flex-direction:column;background-color:var(--soft-white);border-radius:12px;margin-top:1rem;padding:1.5rem;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.basics{margin-bottom:1rem}.missing-ingredients-info{width:90%;max-width:600px;background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:1rem 1.5rem;margin-bottom:1rem;box-shadow:0 2px 4px #0000001a}.missing-ingredients-info h3{color:#856404;margin:0 0 .5rem;font-size:1.2rem}.missing-ingredients-info p{color:#856404;margin:.5rem 0;font-size:.95rem}.missing-ingredients-info ul{margin:.5rem 0 0 1.5rem;padding:0;color:#856404}.missing-ingredients-info li{margin:.25rem 0;font-weight:500}.missing-ingredients-box{margin-top:1.5rem;padding:1.5rem;background-color:#fff3cd;border:2px solid #ffc107;border-radius:8px;box-shadow:0 2px 4px #0000001a}.missing-ingredients-box h3{margin:0 0 1rem;color:#856404;font-size:1.1rem}.missing-ingredients-box ul{margin:.5rem 0 1rem 1.5rem;padding:0;color:#856404}.missing-ingredients-box li{margin:.3rem 0;font-weight:500}.missing-ingredients-box .hint-text{margin:1rem 0 0;color:#856404;font-size:.9rem;font-style:italic}.tag-suggestions-box{margin-top:1.5rem;padding:1.5rem;border:2px solid var(--dark-green);border-radius:8px;box-shadow:0 2px 4px #0000001a}.tag-suggestions-box h3{margin:0 0 1rem;color:var(--dark-green);font-size:1.1rem}.tag-suggestions-list{display:flex;flex-wrap:wrap;gap:.75rem}.tag-suggestion{display:inline-flex;align-items:center;gap:6px;margin:10px;color:var(--white);border-radius:16px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.tag-suggestion.selected{font-weight:600}.tag-suggestion:not(.selected){opacity:.7;filter:grayscale(.3)}.tag-suggestion:not(.selected):hover{opacity:.9;filter:grayscale(0)}.stepperDiv{z-index:3}.stepperDiv .progressBarDiv{display:flex;justify-content:center;align-items:center}.stepperDiv .progressBarContainer{position:relative;width:100%}.stepperDiv .steps{position:relative;display:flex;justify-content:space-between;z-index:9}.stepperDiv .step{width:20px;height:20px;border-radius:50%;cursor:pointer;transition:background 1s}.stepperDiv .step.selected{border:2px solid #3a4047}.stepperDiv .step.completed{border:2px solid #f3f4f5;background:#3a4047}.stepperDiv .progress{position:absolute;width:100%;height:50%;z-index:3;transition:background 1s}.stepperDiv .percent{position:absolute;width:0;height:100%;z-index:-1;transition:width 1s}.stepperDiv .defaultBtn{background:#3a4047;color:#f3f4f5;cursor:pointer;outline:0;box-shadow:none;padding:.4em 1em;border:none;border-radius:45px}.guide-error-text{color:#dc2626;font-size:.7em;margin-bottom:1em;text-align:center}.guide-step-item{display:flex;flex-direction:row;align-items:center;gap:1rem;margin-bottom:1em}.step-number{width:32px;height:32px;border-radius:50%;background-color:var(--pastell-green);color:var(--soft-white);display:flex;align-items:center;justify-content:center;font-weight:700}.step-textarea{flex:1;padding:.5em;font-size:inherit;font-family:inherit;border:1px solid var(--light-grey-1, #E1E1E1);border-radius:6px;outline:none;color:var(--soft-black, #1B1B1B);box-sizing:border-box;transition:border-color .2s}.remove-step-btn-disabled{background-color:#1b1b1b;opacity:.5;cursor:not-allowed}.create-ingredients{display:flex;flex-direction:column;gap:1rem;width:100%;align-items:center}.servings-input-container{display:flex;align-items:center;gap:12px;width:100%;justify-content:center}.servings-input-container label{font-size:1rem;font-weight:500;color:var(--soft-black)}.servings-input{width:80px;padding:8px 12px;font-size:1rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;text-align:center;background:var(--white);color:var(--soft-black)}.servings-input:focus{outline:none;border-color:var(--pastell-green)}.servings-input::placeholder{color:var(--medium-grey)}.selected-ingredients-display{display:grid;grid-template-columns:max-content 10rem 1fr auto;gap:12px;align-items:center}.ingredients-error-text{margin:0;font-size:1rem;color:var(--error-color)}.recipe-ingred-card{font-size:1rem;display:contents}.create-tags{display:flex;flex-direction:column;align-items:center}.create-tags p{font-size:.7rem;margin-bottom:1rem}.selected-tags-display{display:flex;flex-wrap:wrap;gap:8px;border:dotted 2px var(--light-grey-1);min-height:50px;width:100%;margin-bottom:clamp(1rem,2.5vw,1.5rem)}.tag-chip{display:inline-flex;align-items:center;gap:6px;margin:10px;background:var(--pastell-green);color:var(--white);border-radius:16px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.import-recipe-section{background-color:var(--soft-white);border-radius:12px;padding:32px;box-shadow:0 2px 8px #00000014;width:fit-content;margin:0 auto;text-align:center}.import-recipe-section h3{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 12px}.import-recipe-section p{font-size:14px;color:#666;margin:0 0 32px;line-height:1.5}.url-row{display:flex;align-items:center;gap:12px}.url-input{flex:1;padding:12px 16px;font-size:16px;border:2px solid #e0e0e0;border-radius:8px;outline:none;transition:border-color .2s ease;box-sizing:border-box}.url-input:focus{border-color:#4caf50}.url-input::placeholder{color:#999}.import-button svg{font-size:24px!important}.error-message{color:#f44336;font-size:14px;margin:12px 0 0;text-align:center}html,body{margin:0;padding:0;height:100%;overflow:hidden;font-family:Montserrat,"DM Serif Display",serif}:root{--white: #ffffff;--soft-white: #F3F3F3;--light-grey-1: #E1E1E1;--light-grey-2: #F8FBFE;--medium-grey: #2E2E2E;--dark-grey: #141414;--soft-black: #1B1B1B;--black: #000000;--pastell-green: #609E7C;--pastell-blue: #175560;--pastell-tuerkis: #39B496;--dark-green: #183E19;--error-color: #c60000;--basic-font: "Montserrat", sans-serif;--arimo-font: "Arimo", sans-serif;--playpen-font: "Playpen Sans", cursive}#root,.app-root{height:100%}.app-root{display:flex;flex-direction:column;height:100dvh;overflow:hidden}.main-content{background:#fff;font-size:clamp(20px,2.5vw,2rem);padding:8px;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;min-height:0;-webkit-overflow-scrolling:touch}.recipe-card-description{margin:0;font-size:13px;color:#555}.filter-toggle-group{display:inline-flex;border-radius:4px;overflow:hidden;border:1px solid #ccc}.filter-toggle-btn{border:none;background:#f7f7f7;padding:4px 8px;font-size:12px;cursor:pointer;color:#333}.filter-toggle-btn+.filter-toggle-btn{border-left:1px solid #ccc}.filter-toggle-btn.active{background:#333;color:#fff}.filter-toggle-btn:hover:not(.active){background:#e0e0e0}.multi-select{position:relative;margin-bottom:8px}.multi-select-label{font-size:12px;margin-bottom:4px}.multi-select-control{border:1px solid #ccc;border-radius:4px;padding:4px 8px;display:flex;align-items:center;justify-content:space-between;background:#fff;cursor:text}.multi-select-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1}.multi-select-chip{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;background:#e0e0e0;font-size:11px}.multi-select-chip-close{margin-left:4px;font-weight:700}.multi-select-input{border:none;outline:none;font-size:12px;min-width:60px}.multi-select-arrow{margin-left:4px;font-size:10px}.multi-select-dropdown{margin-top:2px;background:#fff;border:1px solid #ccc;border-radius:4px;max-height:10rem;overflow-y:auto}.multi-select-option{padding:4px 8px;font-size:13px;line-height:1.4;cursor:pointer}.multi-select-option:hover{background:#f0f0f0}.multi-select-option.selected{background:#d0e0ff}.multi-select-option.disabled{color:#999;cursor:default}.recipe-detail{display:flex;flex-direction:column;gap:12px}.recipe-banner{width:100%;overflow:hidden;border-radius:8px}.recipe-banner-image{width:100%;height:auto;max-height:320px;object-fit:cover;display:block}.recipe-banner-upload{width:100%;height:320px;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s ease;border:2px dashed #ccc}.recipe-banner-upload:hover{background:linear-gradient(135deg,#e8e8e8,#dcdcdc);border-color:#999}.upload-content{text-align:center;padding:20px}.upload-content p{margin:8px 0;color:#666;font-size:16px}.upload-hint{font-size:14px!important;color:#999!important}.recipe-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.recipe-header-text{flex:1}.recipe-title{margin:0;font-size:28px}.recipe-description{margin:4px 0 0;color:#666;font-size:14px}.recipe-tags{display:flex;flex-wrap:wrap;gap:3px}.tag-chip{padding:5px 12px;border-radius:999px;font-size:13px;color:#fff}.recipe-steps{display:flex;flex-direction:column;gap:20px;margin-top:24px}.recipe-step{position:relative;font-size:15px;transition:opacity .2s ease;border-left:3px solid var(--pastell-tuerkis);padding:0 0 0 20px}.recipe-step.completed{opacity:.5;border-left-color:var(--light-grey-1)}.recipe-step.completed .recipe-step-body{display:none}.recipe-step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.recipe-step-title{font-weight:600;font-size:13px;letter-spacing:.5px;text-transform:uppercase;color:var(--pastell-tuerkis)}.recipe-step.completed .recipe-step-title{color:var(--medium-grey)}.recipe-step-checkbox{font-size:13px;display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--medium-grey);font-weight:500}.recipe-step-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--pastell-tuerkis)}.recipe-step-body{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;line-height:1.6;color:var(--soft-black)}
