.tag{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:16px;font-size:.85em;font-weight:500;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;white-space:nowrap;-webkit-user-select:none;user-select:none;max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.tag-clickable{cursor:pointer}.tag-clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d,0 0 0 1px #ffffff4d}.tag-removable{padding-right:.5rem}.tag-remove{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;margin-left:.25rem;border:none;background:#fff3;border-radius:50%;color:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0}.tag-remove:hover{background:#ffffff4d;transform:scale(1.1)}.tag-remove .material-symbols-outlined{font-size:.875rem;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.username-link-wrapper{display:inline}.username-link{color:#ffffffe6;cursor:pointer;text-decoration:underline;text-decoration-color:#ffffff4d;transition:all .2s ease}.username-link:hover{color:#fff;text-decoration-color:#fff9}.recipe-card{background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 16px #0003;position:relative}.recipe-card.clickable{cursor:pointer}.recipe-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#646cff,#86efac,#646cff);background-size:200% 100%;opacity:0;transition:opacity .4s ease}.recipe-card:hover:before{opacity:1;animation:shimmer 2s ease-in-out infinite}.recipe-card:hover{border-color:#646cff99;transform:translateY(-8px) scale(1.02);box-shadow:0 12px 32px #0000004d,0 0 0 1px #646cff33,0 8px 24px #646cff33}.recipe-card-image{width:100%;height:200px;overflow:hidden;background:linear-gradient(135deg,#646cff33,#86efac33);position:relative}.recipe-card-image:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.3) 100%);pointer-events:none}.recipe-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.4,0,.2,1)}.recipe-card:hover .recipe-card-image img{transform:scale(1.1)}.recipe-card-content{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;flex:1}.recipe-card-title{margin:0;font-size:1.3em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em}.recipe-card-description{margin:0;color:#ffffffb3;font-size:.9em;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.85em}.meta-item{color:#fffc;padding:.35rem .75rem;background:#ffffff14;border-radius:8px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.meta-item:hover{background:#ffffff1f;transform:translateY(-1px)}.meta-item.difficulty{text-transform:uppercase;font-weight:600;font-size:.8em}.recipe-card-owner{font-size:.85em;color:#ffffff80;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1)}.recipe-card-fork-info{font-size:.85em;color:#86eface6;padding:.75rem;background:linear-gradient(135deg,#86efac26,#646cff26);border-radius:8px;border:1px solid rgba(134,239,172,.3);display:flex;flex-direction:column;gap:.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fork-author{font-size:.9em;color:#86efac99}.recipe-card-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1)}.recipe-card-stats{display:flex;gap:1rem;font-size:.85em;color:#fff9;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1)}.stat-item{display:flex;align-items:center;gap:.25rem}.stat-item .material-symbols-outlined{font-size:1em;vertical-align:middle}.recipe-card-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1)}.btn-delete{flex:1;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(239,68,68,.5);background:linear-gradient(135deg,#ef444433,#ef444426);color:#fca5a5;font-size:.85em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.btn-delete:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ef44444d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-delete:hover:not(:disabled):before{width:300px;height:300px}.btn-delete:hover:not(:disabled){background:linear-gradient(135deg,#ef44444d,#ef444440);transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d;border-color:#ef4444b3}.btn-delete:disabled{opacity:.6;cursor:not-allowed}.recipe-card-error{padding:.5rem;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);color:#fca5a5;font-size:.85em;border-radius:4px;margin-bottom:.5rem}.recipe-carousel-container{position:relative;width:100%;margin:1rem 0;padding:0 3.5rem;box-sizing:border-box;overflow:hidden}@media(max-width:768px){.recipe-carousel-container{padding:0 2.5rem}}.recipe-carousel{display:flex;gap:1.5rem;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent;padding:.5rem 0;margin:0;-webkit-overflow-scrolling:touch;width:100%;box-sizing:border-box}.recipe-carousel::-webkit-scrollbar{height:8px}.recipe-carousel::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.recipe-carousel::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.recipe-carousel::-webkit-scrollbar-thumb:hover{background:#ffffff80}.carousel-item{flex:0 0 auto;width:320px;min-width:320px}.carousel-button{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:linear-gradient(135deg,#646cff4d,#86efac4d);color:#fff;font-size:1.8em;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-user-select:none;user-select:none;box-shadow:0 4px 12px #0000004d;padding:0;margin:0;line-height:1;text-align:center;box-sizing:border-box}.carousel-button span{display:inline-block;line-height:1;margin:0;padding:0;vertical-align:middle;position:relative;top:-1px}.carousel-button:hover{background:linear-gradient(135deg,#646cff80,#86efac80);border-color:#ffffffb3;transform:translateY(-50%) scale(1.15);box-shadow:0 6px 20px #646cff80}.carousel-button:active{transform:translateY(-50%) scale(1.05);box-shadow:0 2px 8px #646cff66}.carousel-button:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.carousel-button-left{left:.5rem}.carousel-button-right{right:.5rem}.empty-feed{text-align:center;padding:3rem 2rem;color:#fff9;font-style:italic;background:#ffffff08;border-radius:12px;border:2px dashed rgba(255,255,255,.1)}@media(max-width:768px){.carousel-item{width:280px;min-width:280px}.carousel-button{width:44px;height:44px;font-size:1.6em}.carousel-button-left{left:0}.carousel-button-right{right:0}.recipe-carousel{gap:1rem;padding:.5rem 0}}@media(max-width:480px){.carousel-item{width:260px;min-width:260px}.carousel-button{width:40px;height:40px;font-size:1.4em}.carousel-button-left{left:.5rem}.carousel-button-right{right:.5rem}.recipe-carousel-container{padding:0 2rem}}.search-input-form{flex:1;max-width:500px;margin:0 auto}.search-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.search-icon{position:absolute;left:1rem;color:#fff9;pointer-events:none;font-size:1.2em}.search-input{width:100%;padding:.75rem 3rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:#fff;font-size:.95em;transition:all .3s ease;box-sizing:border-box}.search-input::placeholder{color:#ffffff80}.search-input:focus{outline:none;border-color:#fff6;background:linear-gradient(135deg,#ffffff26,#ffffff14);box-shadow:0 0 0 3px #ffffff1a}.search-clear{position:absolute;right:2.5rem;background:none;border:none;color:#fff9;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;z-index:1}.search-clear:hover{color:#fff;background:#ffffff1a}.search-clear .material-symbols-outlined{font-size:1.2em}.search-submit{position:absolute;right:.5rem;background:none;border:none;color:#ffffffb3;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;z-index:1}.search-submit:hover:not(:disabled){color:#fff;background:#ffffff1a}.search-submit:disabled{opacity:.4;cursor:not-allowed}.search-submit .material-symbols-outlined{font-size:1.2em}@media(max-width:768px){.search-input-form{max-width:100%}.search-input{font-size:.9em;padding:.625rem 2.5rem}.search-clear{right:2rem}.search-submit{right:.25rem}.search-icon{left:.75rem;font-size:1.1em}}.header-search{margin:0 1.5rem}@media(max-width:768px){.header-nav{flex-wrap:wrap;gap:1rem}.header-search{order:3;width:100%;margin:0;max-width:100%}.nav-actions{margin-left:auto}}.home-page{max-width:1400px;margin:0 auto;padding:2rem;color:#fff;width:100%;box-sizing:border-box;overflow-x:hidden}.home-hero{text-align:center;padding:3rem 2rem;margin-bottom:3rem;background:linear-gradient(135deg,#646cff26,#86efac26);border:1px solid rgba(255,255,255,.1);border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.home-hero h2{margin:0 0 1rem;font-size:3em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.home-hero p{margin:0;font-size:1.2em;color:#fffc}.feed-section{margin-bottom:4rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box;overflow-x:hidden}.feed-section-title{margin:0 0 2rem;font-size:2em;color:#fff;font-weight:700;display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.feed-icon{font-size:1.2em;-webkit-text-fill-color:initial;background:none;display:inline-flex;align-items:center;vertical-align:middle}@media(max-width:768px){.home-page{padding:1rem}.home-hero{padding:2rem 1rem}.home-hero h2{font-size:2em}.feed-section{padding:1.5rem}.feed-section-title{font-size:1.5em}}.recipe-form{display:flex;flex-direction:column;gap:1.25rem;text-align:left;animation:slideIn .4s ease-out;max-width:100%;width:100%;box-sizing:border-box;overflow-x:hidden}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.form-row{display:flex;gap:0}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.4rem;flex:1}.form-group label{font-size:.875em;color:#ffffffe6;font-weight:600;letter-spacing:.01em;margin-bottom:.25rem}.form-group input,.form-group textarea,.form-group select{padding:.625rem .875rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:.9em;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#646cff;background:#ffffff1a;box-shadow:0 0 0 3px #646cff1a,0 4px 12px #646cff33;transform:translateY(-1px)}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.form-group select{cursor:pointer}.form-group textarea{resize:vertical;min-height:100px;line-height:1.5}.form-section{margin-top:.5rem;padding:1.25rem;background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 16px #0000001a;position:relative;overflow:visible;z-index:1}.form-section-ingredients{position:relative}.form-section:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#646cff,#86efac,#646cff);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite}.form-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.form-section-header label{font-size:1em;color:#fffffff2;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-add{padding:.5rem 1rem;border-radius:8px;border:1px solid rgba(100,108,255,.5);background:linear-gradient(135deg,#646cff40,#86efac40);color:#a5b4fc;font-size:.875em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;white-space:nowrap}.btn-add:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#646cff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-add:hover:before{width:300px;height:300px}.btn-add:hover{background:linear-gradient(135deg,#646cff59,#86efac59);transform:translateY(-2px);box-shadow:0 4px 12px #646cff4d;border-color:#646cffb3}.empty-ingredients{text-align:center;padding:2rem;color:#fff9;font-size:.9em;background:linear-gradient(135deg,#646cff0d,#86efac0d);border-radius:12px;border:1px dashed rgba(255,255,255,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ingredients-list{display:flex;flex-direction:column;gap:.875rem;position:relative;z-index:1}.ingredient-item{padding:1rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;position:relative;z-index:1;overflow:hidden}.ingredient-item:hover{border-color:#646cff4d;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.ingredient-fields{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.5fr auto;gap:.75rem;align-items:end}.ingredient-field{display:flex;flex-direction:column;gap:.4rem}.ingredient-field label{font-size:.8em;color:#ffffffbf;font-weight:500;margin-bottom:.2rem}.ingredient-field input,.ingredient-field select{padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background-color:#ffffff0d;color:#fff;font-size:.875em;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.ingredient-field input:focus,.ingredient-field select:focus{outline:none;border-color:#646cff;background:#ffffff1a;box-shadow:0 0 0 3px #646cff1a,0 2px 8px #646cff33;transform:translateY(-1px)}.ingredient-field-food{position:relative}.food-select-wrapper{position:relative;width:100%;z-index:1}.food-select-input{width:100%;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d;color:#fff;font-size:.875em;font-family:inherit;cursor:pointer;transition:all .2s ease}.food-select-input:hover{background:#ffffff14;border-color:#ffffff4d}.food-select-input:focus{outline:none;border-color:#646cff80;background:#ffffff14}.food-options{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out,padding .4s ease-in-out,margin .4s ease-in-out,opacity .3s ease-in-out,border-color .3s ease-in-out;padding:0;margin:0;opacity:0;border-top:1px solid transparent}.food-options-expanded{max-height:400px;padding:1rem 0 5px;margin-top:1rem;opacity:1;border-top-color:#ffffff1a}.food-search-container{margin-bottom:.75rem}.food-search-input{width:100%;padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background-color:#ffffff0d;color:#fff;font-size:.875em;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.food-search-input:focus{outline:none;border-color:#646cff;background:#ffffff1a;box-shadow:0 0 0 3px #646cff1a,0 2px 8px #646cff33}.food-search-input::placeholder{color:#fff6}.food-options-list{display:flex;flex-direction:column;gap:.25rem;max-height:300px;overflow-y:auto}.food-options-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;border:none;background:transparent;color:#fff;text-align:left;cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:.9em;box-sizing:border-box;border-radius:6px}.food-options-item:hover{background:#ffffff1a}.food-options-item.food-selected{background:#646cff33;color:#a5b4fc;font-weight:500}.food-options-item.food-selected:hover{background:#646cff4d}.food-options-item .food-name{flex:1}.food-options-item .food-category{color:#fff9;font-size:.9em}.food-options-empty{padding:1rem;text-align:center;color:#ffffff80;font-size:.9em}.btn-remove{padding:.5rem .875rem;border-radius:8px;border:1px solid rgba(239,68,68,.5);background:linear-gradient(135deg,#ef444433,#ef444426);color:#fca5a5;font-size:.8em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;white-space:nowrap;height:fit-content;align-self:end;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-remove:hover{background:linear-gradient(135deg,#ef44444d,#ef444440);transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d;border-color:#ef4444b3}.selected-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;min-height:0;overflow:visible}.tag-select-container{position:relative;width:100%;min-width:0;overflow:visible;z-index:2}.tag-select-wrapper{position:relative;width:100%;z-index:1}.tag-select-input{width:100%;padding:.625rem .875rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d;color:#fff;font-size:.9em;font-family:inherit;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box}.tag-select-input:hover{background:#ffffff14;border-color:#ffffff4d}.tag-select-input:focus{outline:none;border-color:#646cff80;background:#ffffff14}.tag-select-input::placeholder{color:#fff6}.tag-options{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out,padding .4s ease-in-out,margin .4s ease-in-out,opacity .3s ease-in-out,border-color .3s ease-in-out;padding:0;margin:0;opacity:0;border-top:1px solid transparent}.tag-options-expanded{max-height:400px;padding:1rem 0 5px;margin-top:1rem;opacity:1;border-top-color:#ffffff1a}.tag-options-list{display:flex;flex-wrap:wrap;gap:.5rem;max-height:300px;overflow-y:auto;align-items:flex-start}.tag-options-item{display:inline-flex;align-items:center;gap:.5rem;padding:0;border:none;background:transparent;color:#fff;cursor:pointer;transition:all .2s ease;font-family:inherit;box-sizing:border-box;border-radius:6px}.tag-options-item:hover{transform:translateY(-1px)}.tag-options-item.tag-selected{opacity:.5;cursor:default}.tag-options-item.tag-selected:hover{transform:none}.tag-options-item.tag-selected .tag{filter:grayscale(100%);opacity:.6}.tag-options-item.tag-create{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;border:1px dashed rgba(134,239,172,.5);background:#86efac1a;color:#86efac;font-weight:500;border-radius:16px;font-size:.875em}.tag-options-item.tag-create:hover{background:#86efac33;border-color:#86efacb3;transform:translateY(-1px)}.tag-options-item .material-symbols-outlined{font-size:1em;flex-shrink:0}.tag-options-item .tag-create-text{white-space:nowrap}.tag-options-empty{padding:1rem;text-align:center;color:#ffffff80;font-size:.9em}.ingredient-field-unit{position:relative}.unit-select-wrapper{position:relative;width:100%;z-index:1}.unit-select-input{width:100%;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d;color:#fff;font-size:1em;font-family:inherit;cursor:pointer;transition:all .2s ease}.unit-select-input:hover{background:#ffffff14;border-color:#ffffff4d}.unit-select-input:focus{outline:none;border-color:#646cff80;background:#ffffff14}.unit-options{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out,padding .4s ease-in-out,margin .4s ease-in-out,opacity .3s ease-in-out,border-color .3s ease-in-out;padding:0;margin:0;opacity:0;border-top:1px solid transparent}.unit-options-expanded{max-height:500px;padding:1rem 0 5px;margin-top:1rem;opacity:1;border-top-color:#ffffff1a}.unit-options-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start}.unit-options-column{display:flex;flex-direction:column;gap:.25rem}.unit-options-category{padding:.5rem .75rem;font-size:.75em;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#86efaccc;margin-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.unit-options-item{display:flex;align-items:center;gap:.5rem;width:100%;min-width:0;max-width:100%;padding:.75rem 1rem;border:none;background:transparent;color:#fff;text-align:left;cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:.9em;box-sizing:border-box;overflow:hidden;border-radius:6px}.unit-options-item:hover{background:#ffffff1a}.unit-options-item.unit-selected{background:#646cff33;color:#a5b4fc;font-weight:500}.unit-options-item.unit-selected:hover{background:#646cff4d}.unit-options-legacy{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);grid-column:1 / -1}@media(max-width:768px){.unit-options-columns{grid-template-columns:1fr;gap:1rem}.unit-options-legacy{margin-top:.5rem;padding-top:.5rem}}.form-actions{display:flex;gap:.875rem;justify-content:flex-end;margin-top:.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.1);position:relative;z-index:0}.btn-secondary{padding:.625rem 1.25rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-size:.875em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#ffffff26;transform:translateY(-2px);box-shadow:0 4px 12px #0003;border-color:#ffffff4d}@media(max-width:768px){.form-row-2,.ingredient-fields{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.tag-dropdown{max-width:100vw;left:0;right:0}.tag-input-container{max-width:100%}}.profile{max-width:1200px;width:100%;margin:0 auto;padding:2rem;animation:fadeIn .5s ease-in;box-sizing:border-box;overflow-x:hidden;overflow-y:visible}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.profile-header{text-align:center;margin-bottom:2rem;padding:2rem;background:linear-gradient(135deg,#646cff1a,#86efac1a);border-radius:16px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0003;position:relative;overflow:hidden}.profile-header:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(100,108,255,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.profile-header h2{margin-bottom:.5rem;background:linear-gradient(135deg,#86efac,#646cff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;font-size:2em;position:relative;z-index:1}.profile-email{color:#ffffffb3;font-size:.9em;margin:.25rem 0;position:relative;z-index:1}.profile-name{color:#ffffffe6;font-size:1.1em;margin:.25rem 0;font-weight:600;position:relative;z-index:1}.profile-tabs{display:flex;gap:.5rem;margin-bottom:2rem;padding:.5rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-tab{flex:1;padding:.75rem 1.5rem;background:transparent;border:none;border-radius:8px;color:#fff9;cursor:pointer;font-size:.9em;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;position:relative;overflow:hidden}.profile-tab:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#646cff33,#86efac33);opacity:0;transition:opacity .3s ease;border-radius:8px}.profile-tab:hover{color:#ffffffe6;transform:translateY(-2px)}.profile-tab:hover:before{opacity:.5}.profile-tab.active{color:#fff;background:linear-gradient(135deg,#646cff4d,#86efac4d);box-shadow:0 4px 12px #646cff4d}.profile-tab.active:before{opacity:1}.profile-content{min-height:400px;overflow-x:hidden;overflow-y:visible;position:relative}.recipes-section h3{margin-bottom:1.5rem;color:#ffffffe6;font-size:1.5em;font-weight:600;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading{text-align:center;padding:3rem 2rem;color:#ffffffb3;font-size:1.1em;position:relative}.empty-state{text-align:center;padding:4rem 2rem;color:#ffffffb3;background:linear-gradient(135deg,#646cff0d,#86efac0d);border-radius:16px;border:1px dashed rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.empty-state p{margin-bottom:1.5rem;font-size:1.2em;font-weight:500}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:1rem}.add-recipe-section{max-width:800px;margin:0 auto;width:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:visible;position:relative}.add-recipe-section h3{margin-bottom:1.25rem;color:#ffffffe6;font-size:1.4em;font-weight:600;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-primary{padding:.75rem 1.5rem;border-radius:8px;border:none;background:linear-gradient(135deg,#646cff,#535bf2);color:#fff;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;box-shadow:0 4px 12px #646cff4d;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-primary:hover:not(:disabled):before{left:100%}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#535bf2,#646cff);transform:translateY(-2px);box-shadow:0 6px 20px #646cff66}@media(max-width:768px){.profile{padding:1rem}.recipes-grid{grid-template-columns:1fr}.profile-tabs{flex-direction:column;gap:0}.profile-tab{border-bottom:1px solid rgba(255,255,255,.1);border-left:3px solid transparent;margin-bottom:0;text-align:left}.profile-tab.active{border-left-color:#646cff;border-bottom-color:#ffffff1a}}.social-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.social-action-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:#fff;font-size:1em;font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:inherit}.social-action-btn:hover:not(:disabled){background:linear-gradient(135deg,#ffffff26,#ffffff1a);transform:translateY(-2px);border-color:#646cff80}.social-action-btn:disabled{opacity:.5;cursor:not-allowed}.social-action-btn.active{background:linear-gradient(135deg,#ef444433,#ef44441a);border-color:#ef444480}.social-icon{font-size:1.2em;display:inline-flex;align-items:center;vertical-align:middle}.social-count{font-size:.9em;font-weight:600}.reaction-picker-container{position:relative}.reaction-picker{position:absolute;bottom:100%;left:0;margin-bottom:.5rem;display:flex;gap:.5rem;padding:.75rem;background:linear-gradient(135deg,#ffffff26,#ffffff1a);border:1px solid rgba(255,255,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100}.reaction-emoji{font-size:1.5em;padding:.25rem .5rem;border:none;background:transparent;cursor:pointer;transition:all .2s ease;border-radius:6px}.reaction-emoji:hover{background:#ffffff1a;transform:scale(1.2)}.reaction-emoji.active{background:#646cff4d;transform:scale(1.1)}@media(max-width:768px){.social-actions{gap:.75rem}.social-action-btn{padding:.5rem .75rem;font-size:.9em}.reaction-picker{flex-wrap:wrap;max-width:200px}}.comment-section{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.comment-section-loading{text-align:center;padding:2rem;color:#fffc}.comment-section-title{margin:0 0 1.5rem;font-size:1.5em;color:#fff;font-weight:700}.comment-form{margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem}.comment-input{width:100%;padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:1em;font-family:inherit;resize:vertical}.comment-input::placeholder{color:#ffffff80}.comment-input:focus{outline:none;border-color:#646cff80;background:#ffffff14}.btn-primary{padding:.75rem 1.5rem;border-radius:8px;border:1px solid rgba(100,108,255,.5);background:linear-gradient(135deg,#646cff33,#86efac33);color:#a5b4fc;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit;align-self:flex-start}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#646cff4d,#86efac4d);transform:translateY(-2px);box-shadow:0 8px 24px #646cff4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn-secondary:hover{background:#ffffff1a}.comment-login-prompt{padding:1rem;text-align:center;color:#fff9;margin-bottom:2rem}.comments-list{display:flex;flex-direction:column;gap:1.5rem}.no-comments{text-align:center;padding:2rem;color:#fff9;font-style:italic}.comment-item{padding:1rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.comment-reply{margin-top:1rem;border-left:3px solid rgba(100,108,255,.3);padding-left:1rem}.comment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.comment-author{display:flex;flex-direction:column;gap:.25rem}.comment-author-name{font-weight:600;color:#fff;font-size:.95em}.comment-date{font-size:.85em;color:#fff9}.comment-actions{display:flex;gap:.5rem}.comment-action-btn{padding:.25rem .75rem;border:none;background:transparent;color:#ffffffb3;font-size:.85em;cursor:pointer;transition:all .2s ease;border-radius:4px}.comment-action-btn:hover{background:#ffffff1a;color:#fff}.comment-action-btn.delete:hover{background:#ef444433;color:#fca5a5}.comment-content{color:#ffffffe6;line-height:1.6;white-space:pre-wrap;margin-bottom:.75rem}.comment-edit{margin-bottom:.75rem}.comment-edit-actions{display:flex;gap:.5rem;margin-top:.5rem}.comment-footer{display:flex;gap:1rem;align-items:center;margin-top:.5rem}.comment-reply-btn,.comment-toggle-replies{padding:.25rem .75rem;border:none;background:transparent;color:#646cffcc;font-size:.85em;cursor:pointer;transition:all .2s ease;border-radius:4px}.comment-reply-btn:hover,.comment-toggle-replies:hover{background:#646cff1a;color:#a5b4fc}.comment-reply-form{margin-top:1rem;padding:1rem;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.comment-reply-actions{display:flex;gap:.5rem;margin-top:.5rem}.comment-replies{margin-top:1rem;padding-left:1rem;border-left:2px solid rgba(255,255,255,.1)}@media(max-width:768px){.comment-section{padding:1rem}.comment-item{padding:.75rem}.comment-reply{margin-left:.5rem!important}}.recipe-detail{max-width:1200px;margin:0 auto;padding:2rem;color:#fff}.recipe-detail-header{display:grid;grid-template-columns:1fr 2fr;gap:2rem;margin-bottom:3rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recipe-detail-image{width:100%;height:400px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#646cff33,#86efac33)}.recipe-detail-image img{width:100%;height:100%;object-fit:cover}.recipe-detail-info{display:flex;flex-direction:column;gap:1.5rem}.recipe-detail-title{margin:0;font-size:2.5em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.recipe-detail-description{margin:0;color:#fffc;font-size:1.1em;line-height:1.6}.recipe-detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.meta-item{display:flex;flex-direction:column;gap:.25rem;padding:1rem;background:#ffffff14;border-radius:8px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.meta-label{font-size:.85em;color:#fff9;text-transform:uppercase;letter-spacing:.05em}.meta-value{font-size:1.1em;color:#fff;font-weight:600}.recipe-detail-author{font-size:1em;color:#ffffffb3;padding:1rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.recipe-detail-fork-info{font-size:.95em;color:#86eface6;padding:1rem;background:linear-gradient(135deg,#86efac26,#646cff26);border-radius:8px;border:1px solid rgba(134,239,172,.3);display:flex;flex-direction:column;gap:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recipe-detail-fork-info .fork-link{color:inherit;text-decoration:none;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.5rem}.recipe-detail-fork-info .fork-link:hover{color:#86efac;text-decoration:underline;transform:translate(4px)}.recipe-detail-stats{font-size:1em;color:#fffc;padding:1rem;background:#ffffff0d;border-radius:8px;display:flex;gap:1rem;flex-wrap:wrap}.recipe-detail-stats .material-symbols-outlined{font-size:1em;vertical-align:middle;margin-right:.25rem}.recipe-detail-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.recipe-detail-social{margin-top:1.5rem;padding:1rem;background:#ffffff0d;border-radius:8px}.recipe-detail-comments{margin-top:2rem}.recipe-detail-section{margin-bottom:3rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recipe-detail-section h2{margin:0 0 1.5rem;font-size:1.8em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.recipe-detail-instructions{color:#ffffffe6;font-size:1.05em;line-height:1.8;white-space:pre-wrap}.recipe-detail-instructions pre{color:#ffffffe6;font-family:inherit;white-space:pre-wrap;word-wrap:break-word}.recipe-detail-ingredients{list-style:none;padding:0;margin:0;display:grid;gap:1rem}.recipe-detail-ingredients li{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.recipe-detail-ingredients li:hover{background:#ffffff14;transform:translate(4px)}.ingredient-quantity{font-weight:600;color:#86eface6;min-width:100px}.ingredient-name{flex:1;color:#fff;font-size:1.05em}.ingredient-notes{color:#fff9;font-size:.9em;font-style:italic}.no-forks-prompt{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,#646cff1a,#86efac1a);border-radius:12px;border:2px dashed rgba(255,255,255,.2)}.no-forks-prompt p{font-size:1.2em;color:#fffc;margin-bottom:1.5rem}.fork-login-prompt,.fork-owner-prompt{color:#fff9;font-size:.95em;margin-top:1rem}.btn-fork{padding:1rem 2rem;border-radius:8px;border:1px solid rgba(134,239,172,.5);background:linear-gradient(135deg,#86efac33,#646cff33);color:#86efac;display:inline-flex;align-items:center;gap:.5rem}.btn-fork .material-symbols-outlined{font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-fork:hover:not(:disabled){background:linear-gradient(135deg,#86efac4d,#646cff4d);transform:translateY(-2px);box-shadow:0 8px 24px #86efac4d;border-color:#86efacb3}.btn-fork:disabled{opacity:.6;cursor:not-allowed}.forks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.fork-action{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.recipe-detail-edit-action{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.btn-edit-fork{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;border-radius:8px;border:1px solid rgba(100,108,255,.5);background:linear-gradient(135deg,#646cff33,#86efac33)}.btn-edit-fork .material-symbols-outlined{color:#a5b4fc;font-size:1em;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-edit-fork:hover{background:linear-gradient(135deg,#646cff4d,#86efac4d);transform:translateY(-2px);box-shadow:0 8px 24px #646cff4d;border-color:#646cffb3;color:#c7d2fe}.nutrition-info{display:flex;flex-direction:column;gap:2rem}.nutrition-per-serving,.nutrition-total{padding:1.5rem;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.nutrition-per-serving h3,.nutrition-total h3{margin:0 0 1rem;font-size:1.3em;color:#86eface6;font-weight:600}.nutrition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.nutrition-item{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#ffffff14;border-radius:8px;border:1px solid rgba(255,255,255,.1);text-align:center}.nutrition-label{font-size:.85em;color:#fff9;text-transform:uppercase;letter-spacing:.05em}.nutrition-value{font-size:1.3em;color:#fff;font-weight:700}@media(max-width:768px){.recipe-detail-header{grid-template-columns:1fr}.recipe-detail-image{height:250px}.recipe-detail-title{font-size:2em}.recipe-detail-meta,.forks-grid{grid-template-columns:1fr}.nutrition-grid{grid-template-columns:repeat(2,1fr)}}.fork-recipe-page{max-width:1200px;margin:0 auto;padding:2rem;width:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:visible}.fork-recipe-header{margin-bottom:2rem}.fork-recipe-header h2{margin-bottom:.5rem;color:#333}.fork-origin{color:#666;font-size:.9rem;margin-top:.5rem}.fork-origin strong{color:#333}.recipe-diff-page{max-width:1200px;margin:0 auto;padding:2rem;color:#fff}.loading{text-align:center;padding:2rem;color:#fffc;font-size:1.1em}.message{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95em;font-weight:500}.message.info{background-color:#3b82f633;border:1px solid rgba(59,130,246,.5);color:#93c5fd}.btn-back{padding:.75rem 1.5rem;margin-bottom:2rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:#fff;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:inherit}.btn-back:hover{background:linear-gradient(135deg,#ffffff26,#ffffff1a);transform:translate(-4px);border-color:#646cff80}.diff-header{margin-bottom:3rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.diff-header h1{margin:0 0 2rem;font-size:2.5em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.diff-recipe-info{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.diff-recipe-original,.diff-recipe-fork{flex:1;min-width:250px;padding:1.5rem;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.diff-recipe-original h2,.diff-recipe-fork h2{margin:0 0 1rem;font-size:1.3em;color:#ffffffe6;font-weight:600}.recipe-link{display:block;color:#86eface6;text-decoration:none;font-size:1.2em;font-weight:600;margin-bottom:.5rem;transition:all .2s ease}.recipe-link:hover{color:#86efac;text-decoration:underline;transform:translate(4px)}.recipe-author{margin:0;color:#fff9;font-size:.95em}.diff-arrow{font-size:2em;color:#646cffcc;font-weight:700}.diff-section{margin-bottom:2rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.diff-section h3{margin:0 0 1.5rem;font-size:1.5em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.diff-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.diff-original,.diff-fork{display:flex;flex-direction:column;gap:.5rem}.diff-label{font-size:.85em;color:#fff9;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.diff-value{padding:.75rem;border-radius:8px;font-size:1.05em;line-height:1.6}.diff-value.removed{background-color:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;text-decoration:line-through}.diff-value.added{background-color:#22c55e26;border:1px solid rgba(34,197,94,.3);color:#86efac}.diff-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.diff-meta-item{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.diff-meta-label{font-size:.85em;color:#fff9;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.diff-comparison-inline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.diff-arrow-inline{color:#646cffcc;font-weight:700;font-size:1.2em}.diff-ingredients{display:flex;flex-direction:column;gap:.75rem}.diff-ingredient{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.diff-ingredient.unchanged{background:#ffffff0d;color:#fffc}.diff-ingredient.added{background-color:#22c55e26;border-color:#22c55e4d;color:#86efac}.diff-ingredient.removed{background-color:#ef444426;border-color:#ef44444d;color:#fca5a5;text-decoration:line-through}.diff-ingredient.modified{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(100,108,255,.3);border-radius:8px}.diff-ingredient-original,.diff-ingredient-fork{display:flex;align-items:center;gap:1rem;padding:.75rem;border-radius:6px}.diff-ingredient-original{background-color:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;text-decoration:line-through}.diff-ingredient-fork{background-color:#22c55e26;border:1px solid rgba(34,197,94,.3);color:#86efac}.diff-indicator{font-weight:700;font-size:1.2em;min-width:1.5rem;text-align:center}.ingredient-quantity{font-weight:600;color:inherit;min-width:100px}.ingredient-name{flex:1;color:inherit;font-size:1.05em}.ingredient-notes{color:inherit;opacity:.8;font-size:.9em;font-style:italic}@media(max-width:768px){.recipe-diff-page{padding:1rem}.diff-header h1{font-size:2em}.diff-recipe-info{flex-direction:column}.diff-arrow{transform:rotate(90deg)}.diff-comparison,.diff-meta-grid{grid-template-columns:1fr}.diff-comparison-inline{flex-direction:column;align-items:flex-start}.diff-arrow-inline{transform:rotate(90deg)}}.search-results-page{max-width:1400px;margin:0 auto;padding:2rem;color:#fff;width:100%;box-sizing:border-box;overflow-x:hidden}.search-results-header{text-align:center;padding:2rem 0;margin-bottom:3rem}.search-results-header h2{margin:0 0 1rem;font-size:2.5em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.search-query{margin:0;font-size:1.1em;color:#fffc}.search-query strong{color:#fff;font-weight:600}.search-results-section{margin-bottom:4rem;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box}.search-section-title{margin:0 0 2rem;font-size:1.8em;color:#fff;font-weight:700;display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.search-section-title .material-symbols-outlined{font-size:1.2em;-webkit-text-fill-color:initial;background:none;display:inline-flex;align-items:center;vertical-align:middle}.result-count{font-size:.7em;font-weight:500;color:#fff9;-webkit-text-fill-color:rgba(255,255,255,.6);background:none}.search-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;width:100%}.search-results-tags{display:flex;flex-wrap:wrap;gap:1rem}.search-results-users{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.user-card{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;gap:1rem;align-items:flex-start}.user-card:hover{background:linear-gradient(135deg,#ffffff26,#ffffff14);border-color:#ffffff40;transform:translateY(-2px)}.user-card-avatar{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#646cff4d,#86efac4d);border-radius:50%}.user-card-avatar .material-symbols-outlined{font-size:32px;color:#fff}.user-card-info{flex:1;min-width:0}.user-card-name{font-size:1.1em;font-weight:600;color:#fff;margin-bottom:.25rem;word-wrap:break-word}.user-card-email{font-size:.9em;color:#ffffffb3;margin-bottom:.75rem;word-wrap:break-word}.user-card-stats{display:flex;gap:1rem;flex-wrap:wrap}.user-card-stats .stat-item{display:flex;align-items:center;gap:.5rem;font-size:.85em;color:#fffc}.user-card-stats .stat-item .material-symbols-outlined{font-size:1em}.no-results{padding:2rem;text-align:center;color:#fff9;font-size:1.1em}@media(max-width:768px){.search-results-page{padding:1rem}.search-results-header h2{font-size:2em}.search-results-section{padding:1.5rem}.search-section-title{font-size:1.5em}.search-results-grid,.search-results-users{grid-template-columns:1fr}}.tag-feed-page{max-width:1400px;margin:0 auto;padding:2rem;color:#fff;width:100%;box-sizing:border-box;overflow-x:hidden}.tag-feed-header{text-align:center;padding:2rem 0;margin-bottom:3rem}.tag-feed-tag-display{display:flex;justify-content:center;margin-bottom:1.5rem}.tag-feed-header h2{margin:0 0 1rem;font-size:2.5em;color:#fff;font-weight:700;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tag-feed-count{margin:0;font-size:1.1em;color:#fffc}.tag-feed-recipes{width:100%}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;width:100%}.no-results{padding:3rem;text-align:center;color:#fff9;font-size:1.2em}.loading{text-align:center;padding:3rem;color:#fffc;font-size:1.1em}.loading:after{content:"...";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.message{padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;font-size:.95em;font-weight:500}@media(max-width:768px){.tag-feed-page{padding:1rem}.tag-feed-header h2{font-size:2em}.recipes-grid{grid-template-columns:1fr}}.App{text-align:center;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);padding:2rem;position:relative;width:100%;box-sizing:border-box;overflow-x:hidden}.App-header{background:linear-gradient(135deg,#ffffff14,#ffffff08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem 3rem;color:#fff;border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0003;max-width:500px;width:100%;position:relative;overflow:hidden;transition:all .3s ease}.App-header:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#646cff,#86efac,#646cff);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.App-profile{justify-content:flex-start;align-items:stretch;overflow-x:hidden;overflow-y:visible}.App-profile .App-header{max-width:100%;margin-bottom:0;border-radius:0;background:linear-gradient(135deg,#ffffff1f,#ffffff0f);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #0003,0 0 0 1px #ffffff0d inset}.header-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.header-nav h1{margin:0;cursor:pointer;transition:all .3s ease}.header-nav h1:hover{opacity:.8;transform:translate(2px)}.nav-actions{display:flex;gap:.75rem;align-items:center}.nav-actions .btn-secondary{padding:.625rem 1.25rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:#fff;font-size:.9em;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-actions .btn-secondary:hover{background:linear-gradient(135deg,#ffffff26,#ffffff1a);transform:translateY(-2px);box-shadow:0 4px 12px #0003,0 0 0 1px #646cff33;border-color:#646cff80}.nav-actions .logout-btn{padding:.625rem 1.25rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:#fff;font-size:.9em;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-actions .logout-btn:hover{background:linear-gradient(135deg,#ffffff26,#ffffff1a);transform:translateY(-2px);box-shadow:0 4px 12px #0003,0 0 0 1px #646cff33;border-color:#646cff80}h1{margin-bottom:.5rem;background:linear-gradient(135deg,#646cff,#86efac);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:-.02em}.tabs{display:flex;gap:.5rem;margin:2rem 0 1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.tabs button{flex:1;padding:.75rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#fff9;cursor:pointer;font-size:.9em;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);margin-bottom:-2px;position:relative}.tabs button:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,#646cff,#86efac);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.4,0,.2,1)}.tabs button:hover{color:#ffffffe6;transform:translateY(-1px)}.tabs button:hover:after{transform:scaleX(.5)}.tabs button.active{color:#fff;border-bottom-color:#646cff}.tabs button.active:after{transform:scaleX(1)}.message{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.85em}.message.error{background-color:#ef444433;border:1px solid rgba(239,68,68,.5);color:#fca5a5}.message.success{background-color:#22c55e33;border:1px solid rgba(34,197,94,.5);color:#86efac}.auth-form{display:flex;flex-direction:column;gap:1.25rem;text-align:left}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.85em;color:#fffc;font-weight:500}.form-group input{padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:.9em;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-group input:focus{outline:none;border-color:#646cff;background:#ffffff14;box-shadow:0 0 0 3px #646cff1a,0 4px 12px #646cff33;transform:translateY(-1px)}.form-group input::placeholder{color:#fff6}.submit-btn{margin-top:.5rem;padding:.875rem;border-radius:8px;border:1px solid transparent;background:linear-gradient(135deg,#646cff,#535bf2);color:#fff;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;position:relative;overflow:hidden;box-shadow:0 4px 12px #646cff4d}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.submit-btn:hover:not(:disabled):before{left:100%}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#535bf2,#646cff);transform:translateY(-2px);box-shadow:0 6px 20px #646cff66}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.user-info{text-align:left;margin-top:1rem}.user-info h2{margin-bottom:1.25rem;text-align:center;color:#86efac}.info-item{margin-bottom:1rem;font-size:.9em;line-height:1.6}.info-item strong{display:block;margin-bottom:.25rem;color:#ffffffb3;font-size:.85em}.info-item code{background-color:#ffffff1a;padding:.25rem .5rem;border-radius:4px;font-size:.85em;word-break:break-all;display:block;margin-top:.25rem}.info-item .token{font-size:.75em;opacity:.8}.user-actions{display:flex;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.delete-btn{flex:1;padding:.75rem;border-radius:6px;border:1px solid transparent;font-size:.9em;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit;background-color:#ef444433;color:#fca5a5;border-color:#ef444480}.delete-btn:hover:not(:disabled){background-color:#ef44444d}.delete-btn:disabled{opacity:.6;cursor:not-allowed}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);background-attachment:fixed;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(100,108,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(134,239,172,.1) 0%,transparent 50%);pointer-events:none;z-index:0}#root{width:100%;position:relative;z-index:1;overflow-x:hidden}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;-webkit-user-select:none;user-select:none;display:inline-block;vertical-align:middle}
