body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}.card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;margin:24px auto;max-width:1200px;padding:32px}.card h2{color:#2d3748;font-size:2rem;font-weight:700;margin:0 0 24px}.btn-primary,button.primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 16px #667eea66;color:#fff;cursor:pointer;font-weight:600;padding:14px 28px;transition:all .3s ease}.btn-primary:hover,button.primary:hover{box-shadow:0 6px 24px #667eea80;transform:translateY(-2px)}.btn-secondary,button.secondary{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;border-radius:12px;box-shadow:0 4px 16px #f5576c66;color:#fff;cursor:pointer;font-weight:600;padding:14px 28px;transition:all .3s ease}.btn-secondary:hover,button.secondary:hover{box-shadow:0 6px 24px #f5576c80;transform:translateY(-2px)}.main-navigation{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 20px #0000001a;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{justify-content:space-between;margin:0 auto;max-width:1200px;padding:16px 24px}.nav-container,.nav-logo{align-items:center;display:flex}.nav-logo{color:#fff;font-size:1.5rem;font-weight:700;gap:8px;text-decoration:none;transition:transform .2s}.nav-logo:hover{transform:scale(1.05)}.nav-logo span{font-size:1.8rem}.nav-right{gap:16px}.nav-links,.nav-right{align-items:center;display:flex}.nav-links{gap:8px}.language-switcher{background:#ffffff1a;border-radius:8px;display:flex;gap:4px;padding:4px}.lang-btn{background:#0000;border:none;border-radius:6px;color:#fffc;cursor:pointer;font-size:.9rem;font-weight:600;padding:6px 12px;transition:all .3s ease}.lang-btn:hover{background:#ffffff26;color:#fff}.lang-btn.active{background:#ffffff40;color:#fff}.nav-link{border-radius:8px;color:#ffffffe6;font-weight:500;padding:10px 20px;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#ffffff26;color:#fff}.nav-link.active{background:#ffffff40;color:#fff;font-weight:600}.nav-link.active:after{background:#fff;border-radius:2px 2px 0 0;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60%}@media (max-width:768px){.nav-container{flex-direction:column;gap:16px;padding:12px 16px}.nav-right{flex-direction:column;gap:12px;width:100%}.nav-links{flex-wrap:wrap;justify-content:center;width:100%}.nav-link{font-size:.9rem;padding:8px 16px}.nav-logo{font-size:1.2rem}.language-switcher{align-self:center}}.profile-link{align-items:center;border-radius:8px;display:flex;gap:8px;padding:6px 12px;text-decoration:none;transition:all .3s ease}.profile-link:hover{background:#ffffff26}.nav-avatar{border:2px solid #ffffff4d;border-radius:50%;height:32px;object-fit:cover;width:32px}.nav-username{color:#fffffff2;font-size:.95rem;font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-link{background:#ffffff1a;border:1px solid #fff3;padding:8px 16px}.logout-link:hover{background:#fff3;border-color:#ffffff4d}.home-page{min-height:calc(100vh - 80px)}.home-section{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);margin-bottom:0;padding:60px 24px}.home-content{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px}.home-text{display:flex;flex-direction:column;gap:20px}.home-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;line-height:1.2;margin:0}.home-subtitle{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.home-description{color:#4a5568;font-size:1.1rem;line-height:1.6;margin:0}.home-actions{display:flex;gap:16px;margin-top:8px}.home-image-container{border-radius:20px;box-shadow:0 20px 60px #0003;overflow:hidden;position:relative}.home-image{display:block;height:auto;object-fit:cover;width:100%}.btn{border:none;border-radius:12px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:14px 28px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 16px #667eea66;color:#fff}.btn-primary:hover{box-shadow:0 6px 24px #667eea80;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #667eea;color:#667eea}.btn-secondary:hover{background:#667eea;color:#fff}.btn-large{font-size:1.1rem;padding:18px 36px}.features-section{background:#fff;padding:80px 24px}.container{margin:0 auto;max-width:1200px}.section-title{color:#2d3748;font-size:2.5rem;margin:0 0 48px;text-align:center}.features-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.feature-card{background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px #0000000d;padding:32px;text-align:center;transition:all .3s ease}.feature-card:hover{box-shadow:0 12px 32px #0000001a;transform:translateY(-8px)}.feature-card h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0 0 12px}.feature-card p{color:#4a5568;line-height:1.6;margin:0}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 24px;text-align:center}.cta-section h2{font-size:2.5rem;margin:0 0 16px}.cta-section p{font-size:1.2rem;margin:0 0 32px;opacity:.9}.cta-section .btn-primary{background:#fff;color:#667eea}.cta-section .btn-primary:hover{background:#f8f9fa;transform:translateY(-2px)}@media (max-width:968px){.home-content{gap:32px;grid-template-columns:1fr}.home-title{font-size:2.2rem}.home-subtitle{font-size:1.2rem}.home-actions{flex-direction:column}.btn{width:100%}}@media (max-width:768px){.home-section{padding:40px 16px}.home-title{font-size:1.8rem}.home-subtitle{font-size:1.1rem}.features-section{padding:60px 16px}.section-title{font-size:2rem}.features-grid{gap:24px;grid-template-columns:1fr}.cta-section{padding:60px 16px}.cta-section h2{font-size:2rem}}.product-list{overflow:hidden}.product-list h3{font-size:1.1rem;line-height:1.2;margin-bottom:12px}.product-list .table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 6px 18px #0000000f;overflow:hidden;width:100%}.product-list .table td,.product-list .table th{border-bottom:1px solid #0000000f;padding:8px 10px}.product-list .table thead th{background:linear-gradient(0deg,#fff,#fafafa);color:#39424e;font-size:.92rem;font-weight:600;position:-webkit-sticky;position:sticky;text-align:left;top:0;z-index:1}.product-list .table tbody tr:nth-child(2n) td{background:#fcfcfd}.product-list .table tbody tr:hover td{background:#f5f7fb}.product-list .table td:nth-child(2),.product-list .table td:nth-child(3),.product-list .table td:nth-child(4),.product-list .table td:nth-child(5),.product-list .table td:nth-child(6),.product-list .table td:nth-child(7){text-align:right;white-space:nowrap}.product-list .table td b{background:#eef4ff;border-radius:10px;color:#274cdb;display:inline-block;font-weight:600;padding:2px 8px}.product-list .muted{color:#0000008c}.product-list .card h4{font-size:1rem;margin:0 0 8px}.product-list .card .grid2>div:first-child div{margin:6px 0}.product-list .card{border-radius:10px;box-shadow:0 4px 12px #0000000d}@media (max-width:720px){.product-list .table td,.product-list .table th{padding:6px 8px}.product-list h3{font-size:1rem}.product-list .table thead th{font-size:.88rem}}.user-form.card{background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #fffc;border-radius:20px;box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a;margin:24px auto;max-width:1200px;overflow:hidden;padding:32px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.user-form.card:before{background:linear-gradient(90deg,#667eea,#764ba2 50%,#f093fb);content:"";height:4px;left:0;position:absolute;right:0;top:0;z-index:0}.user-form.card:hover{box-shadow:0 16px 48px #0000001f,0 4px 12px #0000000f;transform:translateY(-4px)}.user-form.card h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 24px;padding-bottom:12px;position:relative}.user-form.card h2:after{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;bottom:0;content:"";height:3px;left:0;position:absolute;width:60px}.user-form .grid2{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.user-form .grid1{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;margin-bottom:24px}.user-form label{color:#2d3748;display:flex;flex-direction:column;font-size:.95rem;font-weight:600;gap:8px;position:relative}.user-form input[type=number],.user-form select{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #00000005;font-family:inherit;font-size:1rem;outline:none;padding:14px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.user-form input[type=number]:focus,.user-form select:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea26;transform:translateY(-2px)}.user-form input[type=number]:hover:not(:focus),.user-form select:hover:not(:focus){border-color:#cbd5e0}.user-form input[type=number]::placeholder{color:#a0aec0}.user-form select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%236676ea' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.user-form select option{background:#fff;color:#2d3748;font-size:1rem;padding:12px}.user-form button{border:none;border-radius:12px;box-shadow:0 4px 12px #00000014;cursor:pointer;font-size:1rem;font-weight:600;overflow:hidden;padding:14px 28px;position:relative;text-transform:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.user-form button:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.user-form button:hover:before{left:100%}.user-form button:active{transform:scale(.98)}.user-form button:disabled{cursor:not-allowed;opacity:.6;transform:none}.user-form button.primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 16px #667eea66;color:#fff}.user-form button.primary:hover:not(:disabled){background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 6px 24px #667eea80;transform:translateY(-2px)}.user-form button.secondary{background:linear-gradient(135deg,#f093fb,#f5576c);box-shadow:0 4px 16px #f5576c66;color:#fff}.user-form button.secondary:hover:not(:disabled){background:linear-gradient(135deg,#f5576c,#f093fb);box-shadow:0 6px 24px #f5576c80;transform:translateY(-2px)}.tag-input{position:relative}.tags{background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;min-height:50px;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.tags:focus-within{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea26}.tags input{background:#0000;border:none;box-shadow:none;flex:1 1;font-size:1rem;min-width:120px;outline:none;padding:8px 4px}.tags input:focus{border:none;transform:none}.tags input::placeholder{color:#a0aec0;font-style:italic}.tag{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:6px;overflow:hidden;padding:8px 14px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.tag:before{background:#fff3;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s}.tag:hover:before{opacity:1}.tag:hover{box-shadow:0 4px 12px #667eea66;transform:scale(1.05)}.dropdown{animation:slideDown .2s ease-out;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #00000026;left:0;margin-top:8px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{border-bottom:1px solid #f1f5f9;cursor:pointer;padding:12px 16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:linear-gradient(90deg,#667eea15,#0000);color:#667eea;font-weight:600;padding-left:20px}.dropdown-item.muted{color:#718096;font-style:italic}.dropdown-item.muted:hover{background:linear-gradient(90deg,#71809615,#0000)}.error{animation:shake .4s cubic-bezier(.36,.07,.19,.97);background:linear-gradient(135deg,#fee,#fdd);border:2px solid #fc8181;border-radius:12px;color:#c53030;font-size:.95rem;font-weight:500;padding:14px 18px}@keyframes shake{10%,90%{transform:translateX(-4px)}20%,80%{transform:translateX(4px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}.success{animation:fadeInUp .4s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#f0fff4,#dcfce7);border:2px solid #68d391;border-radius:12px;color:#2f855a;font-size:.95rem;font-weight:500;padding:14px 18px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.success b{color:#22543d;font-size:1.1rem;font-weight:700}.muted{color:#718096;font-size:.95rem;font-style:italic}@media (max-width:768px){.user-form.card{border-radius:16px;margin:16px;padding:24px}.user-form.card h2{font-size:1.5rem}.user-form .grid2{gap:16px;grid-template-columns:1fr}.user-form button{padding:16px 24px;width:100%}}@media (max-width:480px){.user-form.card{margin:12px;padding:20px}.user-form.card h2{font-size:1.3rem;padding-bottom:8px}.user-form input[type=number],.user-form select{font-size:.95rem;padding:12px 14px}.tags input{font-size:.95rem;min-width:100px}.tag{font-size:.85rem;padding:6px 12px}}.user-form.card>div:last-child{position:relative}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.user-form button:disabled{animation:pulse 1.5s ease-in-out infinite}.dropdown::-webkit-scrollbar{width:8px}.dropdown::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.dropdown::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea,#764ba2);border-radius:4px}.dropdown::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#764ba2,#667eea)}.user-form button:focus-visible,.user-form input[type=number]:focus-visible,.user-form select:focus-visible{outline:3px solid #667eea;outline-offset:2px}@media (prefers-reduced-motion:no-preference){.user-form.card{transition:transform .3s ease,box-shadow .3s ease}.user-form button{transition:all .3s cubic-bezier(.4,0,.2,1)}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.calculator-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:calc(100vh - 80px);padding:40px 24px}@media (max-width:768px){.calculator-page{padding:24px 16px}.page-header h1{font-size:2rem}.page-header p{font-size:1rem}}.recipe-list-container{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;margin:24px auto;max-width:1200px;padding:32px}.recipe-list-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:16px}.recipe-list-header h2{color:#2d3748;font-size:2rem;font-weight:700;margin:0}.recipe-count{color:#718096;font-size:.95rem;font-weight:500}.generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.generate-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.generate-btn:disabled{cursor:not-allowed;opacity:.6}.recipe-error{background:#fee;border-radius:8px;color:#c33;margin:20px 0;padding:20px;text-align:center}.meal-plan-content{margin-top:24px}.meal-plan-sections{display:flex;flex-direction:column;gap:32px}.meal-section{background:#fff;border-left:4px solid #667eea;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:24px;transition:transform .2s,box-shadow .2s}.meal-section:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.meal-section.breakfast{background:linear-gradient(135deg,#fffbeb,#fff);border-left-color:#f59e0b}.meal-section.lunch{background:linear-gradient(135deg,#ecfdf5,#fff);border-left-color:#10b981}.meal-section.dinner{background:linear-gradient(135deg,#f5f3ff,#fff);border-left-color:#8b5cf6}.meal-section.snacks{background:linear-gradient(135deg,#fdf2f8,#fff);border-left-color:#ec4899}.meal-section.tips{background:linear-gradient(135deg,#eff6ff,#fff);border-left-color:#3b82f6}.section-title{align-items:center;color:#1f2937;display:flex;font-size:1.5rem;font-weight:700;gap:8px;margin:0 0 20px}.section-content{display:flex;flex-direction:column;gap:16px}.dish-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.dish-card:hover{background:#fff;border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.dish-name{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 16px}.dish-details{display:flex;flex-direction:column;gap:12px}.ingredients-section,.nutrition-section,.preparation-section{display:flex;flex-direction:column;gap:8px}.section-label{align-items:center;color:#4b5563;display:flex;font-size:.95rem;font-weight:600;gap:6px}.ingredients-list{grid-gap:6px;display:grid;gap:6px}.ingredients-list li{background:#fff;border-left:3px solid #d1d5db;border-radius:6px;color:#374151;font-size:.95rem;padding:8px 12px}.nutrition-section p,.preparation-section p{background:#fff;border-radius:6px;color:#374151;font-size:.95rem;line-height:1.6;margin:0;padding:10px 12px}.text-content{display:flex;flex-direction:column;gap:8px}.text-content p{color:#4b5563;line-height:1.6;margin:0}.tip-item{background:#fff;border-left:3px solid #3b82f6;border-radius:8px;color:#374151;font-size:.95rem;line-height:1.6;margin-bottom:8px;padding:12px 16px}@media (max-width:768px){.meal-section{padding:16px}.section-title{font-size:1.25rem}.dish-name{font-size:1.1rem}}.recipe-empty{padding:60px 20px;text-align:center}.recipe-empty .muted{color:#718096;font-size:1.1rem;line-height:1.6}.recipe-categories{display:flex;flex-direction:column;gap:40px}.recipe-category-section{display:flex;flex-direction:column;gap:20px}.category-title{border-bottom:3px solid #667eea;color:#2d3748;font-size:1.5rem;font-weight:700;margin:0;padding-bottom:12px}.recipe-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.recipe-card{background:linear-gradient(135deg,#fff,#f7fafc);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 8px #0000000f;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.recipe-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.recipe-card:hover{box-shadow:0 8px 24px #667eea26;transform:translateY(-4px)}.recipe-card:hover:before{transform:scaleX(1)}.recipe-content{display:flex;flex-direction:column;gap:16px}.recipe-title{color:#2d3748;font-size:1.3rem;font-weight:600;line-height:1.4;margin:0}.recipe-time{border-bottom:1px solid #e2e8f0;color:#718096;font-size:.9rem;font-weight:500;padding:8px 0}.recipe-ingredients{margin-top:4px}.ingredients-label{color:#4a5568;display:block;font-size:.9rem;font-weight:600;margin-bottom:12px}.ingredients-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.ingredient-item{align-items:center;background:#f7fafc;border-left:3px solid #667eea;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px;transition:all .2s ease}.ingredient-item:hover{background:#edf2f7;transform:translateX(4px)}.ingredient-name{color:#2d3748;font-size:.9rem;font-weight:500}.ingredient-amount{background:#667eea1a;border-radius:6px;color:#667eea;font-size:.9rem;font-weight:700;padding:4px 10px}@media (max-width:768px){.recipe-grid{grid-template-columns:1fr}.recipe-list-header{align-items:flex-start;flex-direction:column;gap:8px}.recipe-categories{gap:30px}}.results-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:calc(100vh - 80px);padding:40px 24px}.results-grid{grid-gap:24px;display:grid;gap:24px}.results-section{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000000d;padding:24px}.results-section.full-width{grid-column:1/-1}@media (max-width:768px){.results-page{padding:24px 16px}.page-header h1{font-size:2rem}.page-header p{font-size:1rem}.results-section{padding:16px}}.about-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:calc(100vh - 80px);padding:40px 24px}.page-header{margin:0 auto 32px;max-width:1200px}.page-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin:0 0 16px}.page-header p{color:#4a5568;font-size:1.2rem;margin:0}.page-content{margin:0 auto;max-width:1200px}.about-section{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000000d;margin-bottom:32px;padding:40px}.about-section h2{border-bottom:3px solid #667eea;color:#2d3748;font-size:2rem;font-weight:600;margin:0 0 24px;padding-bottom:16px}.about-section p{color:#4a5568;font-size:1.1rem;line-height:1.8;margin:0 0 16px}.steps{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:32px}.step{background:linear-gradient(145deg,#f8f9fa,#fff);border:2px solid #e2e8f0;border-radius:12px;padding:24px;position:relative;transition:all .3s ease}.step:hover{border-color:#667eea;box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.step-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:50px;justify-content:center;margin-bottom:16px;width:50px}.step h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 12px}.step p{color:#4a5568;font-size:1rem;line-height:1.6;margin:0}.advantages{list-style:none;margin:0;padding:0}.advantages li{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:1.1rem;line-height:2;padding:12px 0}.advantages li:last-child{border-bottom:none}@media (max-width:768px){.about-page{padding:24px 16px}.page-header h1{font-size:2rem}.page-header p{font-size:1rem}.about-section{padding:24px}.about-section h2{font-size:1.5rem}.about-section p{font-size:1rem}.steps{gap:24px;grid-template-columns:1fr}.advantages li{font-size:1rem}}*{box-sizing:border-box}.history-page{margin:0 auto;max-width:1400px;padding:20px}.page-header{margin-bottom:30px;text-align:center}.page-header h1{color:#2c3e50;margin-bottom:10px}.page-header p{color:#7f8c8d;font-size:1.1rem}.loading{font-size:1.2rem;padding:50px}.not-logged-in{padding:50px;text-align:center}.not-logged-in p{color:#7f8c8d;font-size:1.2rem;margin-bottom:20px}.login-btn{background:#4285f4;border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:12px 30px;text-decoration:none;transition:background .3s}.login-btn:hover{background:#357ae8}.error-message{background:#fee;border-radius:8px;color:#c33;padding:20px;text-align:center}.no-history{color:#7f8c8d;font-size:1.1rem;padding:50px;text-align:center}.history-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.history-list{display:contents}.history-item{background:#fff;border:2px solid #e0e0e0;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;min-height:200px;padding:15px;transition:all .3s}.history-item:hover{border-color:#4caf50;box-shadow:0 4px 8px #0000001a}.history-item.selected{background:#f1f8f4;border-color:#4caf50;box-shadow:0 4px 12px #4caf504d}.history-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.history-date{color:#7f8c8d;font-size:.9rem}.delete-btn{background:none;border:none;color:#c33;cursor:pointer;font-size:1.2rem;padding:5px;transition:transform .2s,background-color .2s}.delete-btn:hover{background-color:#fee;border-radius:6px;transform:scale(1.2)}.history-item:focus-visible{outline:2px solid #4caf50;outline-offset:2px}.history-item-info{align-items:center;display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:10px}.period-badge{background:#4caf50;font-size:.85rem;padding:3px 10px}.history-item-summary{grid-gap:10px;display:grid;font-size:.9rem;gap:10px;grid-template-columns:1fr 1fr}.summary-item{background:#f8f9fa;border-radius:6px;padding:8px}.calculation-details{background:#fff;border:2px solid #e0e0e0;border-radius:10px;grid-column:1/-1;margin-top:20px;max-height:calc(100vh - 200px);overflow-y:auto;padding:25px}.calculation-details h2{border-bottom:2px solid #4caf50;color:#2c3e50;margin-bottom:20px;padding-bottom:10px}.details-section{margin-bottom:30px}.details-section h3{color:#34495e;font-size:1.2rem;margin-bottom:15px}.details-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}.detail-item{background:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.detail-label{color:#7f8c8d;font-weight:600}.detail-value{color:#2c3e50;font-weight:500}.nutrition-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}.nutrition-item{background:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.nutrition-item.highlight{background:#e8f5e9;border:2px solid #4caf50}.nutrition-label,.nutrition-value{font-weight:600}.diet-list{grid-gap:10px;display:grid;gap:10px;max-height:400px;overflow-y:auto}.diet-item{background:#f8f9fa;border-left:4px solid #4caf50;border-radius:6px;display:flex;justify-content:space-between;padding:12px 15px}.product-name{max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-amount{font-weight:600;white-space:nowrap}@media (max-width:1400px){.history-content{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.history-content{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.history-content{grid-template-columns:1fr}}@media (max-width:600px){.details-grid,.history-item-summary,.nutrition-grid{grid-template-columns:1fr}}.profile-page{margin:0 auto;max-width:1400px;min-height:calc(100vh - 80px);padding:20px}.profile-header-section{margin-bottom:30px;text-align:center}.profile-header-section h1{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.profile-header-section p{color:#7f8c8d;font-size:1.1rem}.loading{color:#7f8c8d;font-size:1.3rem;padding:100px;text-align:center}.profile-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;justify-content:center;margin-bottom:30px}.tab-btn{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#7f8c8d;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;margin-bottom:-2px;padding:12px 30px;transition:all .3s}.tab-btn:hover{color:#4caf50}.tab-btn.active{border-bottom-color:#4caf50;color:#4caf50}.tab-icon{font-size:1.2rem}.profile-overview{animation:fadeIn .3s}.profile-card{background:#fff;border-radius:15px;box-shadow:0 4px 12px #0000001a;margin-bottom:30px;padding:30px}.profile-header{align-items:center;display:flex;gap:20px}.profile-avatar-large{border:4px solid #4caf50;border-radius:50%;height:100px;width:100px}.profile-info h2{color:#2c3e50;font-size:2rem;margin:0 0 8px}.profile-email{color:#7f8c8d;font-size:1rem;margin:5px 0}.profile-member-since{color:#95a5a6;font-size:.9rem}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{align-items:center;background:#fff;border-radius:15px;box-shadow:0 4px 12px #0000001a;display:flex;gap:20px;padding:25px;transition:transform .3s}.stat-card:hover{transform:translateY(-5px)}.stat-icon{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:60px;justify-content:center;width:60px}.stat-icon-calculations{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-icon-cost{background:linear-gradient(135deg,#4caf50,#66bb6a)}.stat-icon-calories{background:linear-gradient(135deg,#ff6b6b,#ee5a6f)}.stat-icon-protein{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.stat-info h3{color:#4caf50;font-size:2rem;margin:0}.stat-info p{color:#7f8c8d;font-size:.95rem;margin:5px 0 0}.insights-section{background:#fff;border-radius:15px;box-shadow:0 4px 12px #0000001a;padding:30px}.insights-section h3{color:#2c3e50;font-size:1.5rem;margin-bottom:20px}.insights-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.insight-card{background:#f8f9fa;border-left:4px solid #4caf50;border-radius:10px;padding:20px}.insight-card h4{color:#34495e;margin-bottom:15px}.chart-bar{align-items:center;display:flex;gap:10px;height:30px;margin-bottom:10px}.chart-fill{border-radius:5px;height:100%;transition:width .5s}.chart-fill.week{background:linear-gradient(90deg,#4caf50,#66bb6a)}.chart-fill.day{background:linear-gradient(90deg,#2196f3,#42a5f5)}.chart-bar span{color:#555;font-size:.9rem;white-space:nowrap}.cost-range{display:flex;flex-direction:column;gap:12px}.cost-item{background:#fff;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.cost-label{color:#7f8c8d;font-weight:500}.cost-value{color:#4caf50;font-size:1.1rem;font-weight:700}.profile-history{animation:fadeIn .3s}.history-header{display:flex;justify-content:flex-end;margin-bottom:20px}.export-btn{align-items:center;background:linear-gradient(135deg,#4caf50,#66bb6a);border:none;border-radius:8px;box-shadow:0 2px 8px #4caf504d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s}.export-btn:hover{background:linear-gradient(135deg,#66bb6a,#81c784);box-shadow:0 4px 12px #4caf5066;transform:translateY(-2px)}.favorites-section,.recent-section{margin-bottom:40px}.favorites-section h3,.recent-section h3{color:#2c3e50;font-size:1.5rem;margin-bottom:20px}.history-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.history-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;padding:20px;transition:all .3s}.history-card:hover{border-color:#4caf50;box-shadow:0 4px 16px #4caf504d;transform:translateY(-5px)}.history-card-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.history-card-date{color:#7f8c8d;font-size:.85rem}.history-card-actions{display:flex;gap:8px}.delete-btn-small,.favorite-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;padding:4px 8px;transition:all .2s}.delete-btn-small:hover,.favorite-btn:hover{background:#f0f0f0;transform:scale(1.1)}.favorite-btn.active{animation:starPulse .5s}@keyframes starPulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.history-card-info{align-items:center;display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:15px}.period-badge{border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 12px}.period-badge.week{background:#4caf50}.period-badge.day{background:#2196f3}.history-card-stats{border-top:1px solid #e0e0e0;display:flex;justify-content:space-around;padding-top:15px}.stat{align-items:center;display:flex;flex-direction:column;gap:5px}.stat-label{color:#718096;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-value{color:#2c3e50;font-size:.95rem;font-weight:600}.modal-overlay{align-items:center;animation:fadeIn .2s;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s;background:#fff;border-radius:15px;max-height:90vh;max-width:700px;overflow-y:auto;padding:30px;position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-close{background:none;border:none;border-radius:50%;color:#7f8c8d;cursor:pointer;font-size:1.5rem;height:35px;position:absolute;right:15px;top:15px;transition:all .2s;width:35px}.modal-close:hover{background:#f0f0f0;color:#2c3e50}.modal-content h2{color:#2c3e50;margin-bottom:5px}.modal-date{color:#7f8c8d;font-size:.9rem}.modal-date,.modal-section{margin-bottom:25px}.modal-section h3{border-bottom:2px solid #4caf50;color:#34495e;font-size:1.2rem;margin-bottom:15px;padding-bottom:8px}.modal-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.modal-item{background:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;padding:10px}.modal-label{color:#7f8c8d;font-weight:500}.modal-value{color:#2c3e50;font-weight:600}.modal-nutrition{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}.nutrition-item-modal{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:12px;padding:15px}.nutrition-item-modal.highlight{background:#e8f5e9;border:2px solid #4caf50;grid-column:1/-1}.nutrition-icon{align-items:center;border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:1.2rem;font-weight:700;height:40px;justify-content:center;width:40px}.nutrition-icon-calories{background:linear-gradient(135deg,#ff6b6b,#ee5a6f)}.nutrition-icon-protein{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.nutrition-icon-fat{background:linear-gradient(135deg,#feca57,#ff9ff3)}.nutrition-icon-carbs{background:linear-gradient(135deg,#48dbfb,#0abde3)}.nutrition-icon-cost{background:linear-gradient(135deg,#4caf50,#66bb6a)}.nutrition-label{color:#7f8c8d;font-size:.85rem;margin-bottom:4px}.nutrition-value{color:#2c3e50;font-size:1.1rem;font-weight:700}.modal-diet-list{grid-gap:8px;display:grid;gap:8px;max-height:300px;overflow-y:auto}.modal-diet-item{background:#f8f9fa;border-left:3px solid #4caf50;border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px}.product-name{color:#2c3e50;font-weight:500}.product-amount{color:#4caf50;font-weight:700}.no-data{color:#7f8c8d;font-size:1.1rem;padding:60px 20px;text-align:center}@media (max-width:768px){.profile-header{flex-direction:column;text-align:center}.history-grid,.stats-grid{grid-template-columns:1fr}.modal-content{margin:20px;max-width:calc(100% - 40px)}.modal-grid,.modal-nutrition{grid-template-columns:1fr}.tab-btn{font-size:.9rem;padding:10px 15px}}
/*# sourceMappingURL=main.c3c37600.css.map*/