.save-button-wrapper{position:relative;display:inline-block}.save-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background-color:#fff;border:2px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;position:relative;width:100%}.save-button:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-white)}.save-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.save-button:disabled{opacity:.6;cursor:not-allowed}.save-button--saved{background-color:var(--color-primary);color:var(--color-white)}.save-button--saved:hover:not(:disabled){background-color:var(--color-primary-dark)}.save-button--compact{padding:.375rem .75rem;font-size:var(--font-size-sm)}.save-button--icon-only{padding:.5rem}.save-button svg{width:20px;height:20px;flex-shrink:0}.save-button .spinner{display:inline-block;width:20px;height:20px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spinner-rotation .8s linear infinite}.save-button__tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;padding:.75rem 1rem;background-color:#1a1a1a;color:#fff;font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-sm);white-space:nowrap;z-index:1000;pointer-events:none;box-shadow:0 4px 12px #0000004d}.save-button__tooltip:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#1a1a1a}.save-button__error{margin-top:.5rem;padding:.75rem;background-color:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--border-radius-sm);color:var(--color-error-dark);font-size:var(--font-size-sm)}.star-rating{display:inline-flex;align-items:center;gap:.5rem}.star-rating__stars{display:inline-flex;gap:.125rem;line-height:1}.star-rating__star{display:inline-block;line-height:1}.star-rating__star--filled{color:var(--glyc-blue, #6b78a8)}.star-rating__star--half{color:var(--glyc-blue, #6b78a8);position:relative}.star-rating__star--half:after{content:"☆";position:absolute;left:0;color:var(--neutral-400, #9ca3af);clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%)}.star-rating__star--empty{color:var(--neutral-400, #9ca3af)}.star-rating__count{color:var(--neutral-600, #4b5563);font-size:.875rem}.star-rating__no-rating{color:var(--neutral-500, #6b7280);font-size:.875rem;font-style:italic}.star-rating--sm .star-rating__star{font-size:14px}.star-rating--sm .star-rating__count{font-size:.75rem}.star-rating--md .star-rating__star{font-size:16px}.star-rating--md .star-rating__count{font-size:.875rem}.star-rating--lg .star-rating__star{font-size:20px}.star-rating--lg .star-rating__count{font-size:1rem}.star-rating__stars:focus{outline:2px solid var(--glyc-blue, #6b78a8);outline-offset:2px;border-radius:.25rem}.star-rating-input{display:inline-flex;align-items:center;gap:.5rem;position:relative}.star-rating-input__stars{display:inline-flex;gap:.125rem;line-height:1;padding:.25rem;border-radius:.25rem}.star-rating-input__stars:focus{outline:2px solid var(--glyc-blue, #6b78a8);outline-offset:2px}.star-rating-input__star{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;padding:.125rem;cursor:pointer;transition:transform .2s ease,color .15s ease;line-height:1;color:var(--neutral-400, #9ca3af)}.star-rating-input__star:hover:not(:disabled){transform:scale(1.1)}.star-rating-input__star:active:not(:disabled){transform:scale(.95)}.star-rating-input__star:disabled{cursor:not-allowed;opacity:.5}.star-rating-input__star--active,.star-rating-input__star--selected{color:var(--glyc-blue, #6b78a8)}.star-rating-input__loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#ffffffe6;border-radius:.25rem;z-index:1}.star-rating-input__spinner{display:inline-block;font-size:20px;animation:spin 1s linear infinite;color:var(--glyc-blue, #6b78a8)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.star-rating-input--sm .star-rating-input__star{font-size:14px}.star-rating-input--md .star-rating-input__star{font-size:16px}.star-rating-input--lg .star-rating-input__star{font-size:20px}.star-rating-input__star:focus-visible{outline:2px solid var(--glyc-blue, #6b78a8);outline-offset:2px;border-radius:.125rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;transition:opacity .2s ease}.modal-overlay--visible{opacity:1}.modal-overlay--enter{animation:modal-fade-in .2s ease forwards}.modal-overlay--exit{animation:modal-fade-out .2s ease forwards}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.modal-content{background-color:var(--color-white);border-radius:var(--border-radius-lg);padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 10px 25px #0003;animation:modal-slide-up .2s ease forwards}@keyframes modal-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content--signin-prompt{max-width:450px}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;padding:.5rem;cursor:pointer;color:var(--color-gray-600);transition:color .2s ease;border-radius:var(--border-radius-sm)}.modal-close:hover{color:var(--color-gray-900);background-color:var(--color-gray-100)}.modal-close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.modal-heading{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0 0 1rem;padding-right:2rem}.modal-message{font-size:var(--font-size-base);color:var(--color-gray-700);margin:0 0 1.5rem;line-height:1.6}.benefits-list{list-style:none;padding:0;margin:0 0 1.5rem}.benefit-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 0;font-size:var(--font-size-base);color:var(--color-gray-700);line-height:1.5}.benefit-icon{flex-shrink:0;margin-top:.125rem;color:var(--color-success)}.modal-cta-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.5rem;background-color:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .2s ease}.modal-cta-button:hover{background-color:var(--color-primary-dark)}.modal-cta-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.modal-cta-button svg{width:20px;height:20px;flex-shrink:0}@media(max-width:768px){.modal-content{width:95%;padding:1.5rem;max-height:95vh}.modal-content--mobile{border-radius:var(--border-radius-md)}.modal-heading{font-size:var(--font-size-xl);padding-right:1.5rem}.modal-message{font-size:var(--font-size-sm)}.benefit-item{font-size:var(--font-size-sm);padding:.5rem 0}.modal-cta-button{padding:.75rem 1.25rem;font-size:var(--font-size-sm)}}.homepage-container{max-width:var(--container-max-width, 1200px);margin:0 auto;padding:var(--space-6, 1.5rem) var(--space-4, 1rem);display:grid;grid-template-columns:1fr 320px;gap:var(--space-6, 1.5rem);align-items:start}.homepage-main{display:flex;flex-direction:column;gap:var(--space-8, 2rem);min-width:0}.homepage-sidebar{position:sticky;top:var(--space-6, 1.5rem)}@media(max-width:1024px){.homepage-container{grid-template-columns:1fr;gap:var(--space-6, 1.5rem);padding:var(--space-4, 1rem)}.homepage-sidebar{position:static}}@media(max-width:768px){.homepage-container{padding:var(--space-3, .75rem);gap:var(--space-4, 1rem)}.homepage-main{gap:var(--space-6, 1.5rem)}}.tag-hero{position:relative;background:linear-gradient(135deg,#6b78a8,#8c97c8);min-height:160px;display:flex;align-items:center;justify-content:center;margin-bottom:0}.tag-hero__content{width:100%;max-width:1200px;margin:0 auto;padding:32px 24px;text-align:left;color:#fff}.tag-hero h1{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:#fff;margin:0 0 12px;line-height:1.3}.tag-hero__subtitle{font-size:15px;color:#fff;opacity:.95;margin:0 0 8px;line-height:1.5;max-width:700px;font-weight:500}.tag-hero__description{font-size:15px;color:#fff;opacity:.95;margin:0 0 12px;line-height:1.5;max-width:700px}.tag-hero__stats{font-size:13px;color:#fff;opacity:.9;font-weight:600;margin-top:8px}.stat{display:inline;margin-right:16px}.stat__value{font-weight:700}.stat__label{font-weight:400}.tag-layout{max-width:1400px;margin:0 auto;padding:2rem 1rem;display:grid;grid-template-columns:200px 1fr 200px;gap:2rem;align-items:start}.tag-ad-left,.tag-ad-right{display:block}.tag-ad-sticky{position:sticky;top:80px}.tag-content{min-width:0}.related-tags{margin-bottom:3rem;padding:2rem;background:#f8f9fa;border-radius:8px}.related-tags h3{margin-bottom:1rem;font-size:1.25rem;color:var(--color-text-primary)}.tag-chips{display:flex;flex-wrap:wrap;gap:.75rem}.tag-chip{display:inline-block;padding:.5rem 1rem;background:#fff;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:20px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease}.tag-chip:hover{background:var(--color-primary);color:#fff;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.tag-tips{margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:8px}.tag-tips h2{margin-bottom:.5rem;font-size:1.25rem;color:var(--color-text-primary)}.tag-tips ul{list-style:none;padding:0;margin:0}.tag-tips li{padding:.25rem 0 .25rem 1.75rem;position:relative;line-height:1.4;color:var(--color-text-secondary)}.tag-tips li:before{content:"✓";position:absolute;left:0;color:var(--color-primary);font-weight:700;font-size:1.25rem}.tag-tips li:not(:last-child){border-bottom:1px solid #e9ecef}.tag-recipes{margin-top:2rem}.tag-recipes .recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:3rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-state .spinner{margin-bottom:1rem}.loading-state p{color:var(--color-text-light);font-size:1rem}.empty-state{text-align:center;padding:4rem 2rem}.empty-state p{font-size:1.125rem;color:var(--color-text-secondary);margin-bottom:2rem}.empty-state .btn-primary{display:inline-block}@media(max-width:1200px){.tag-layout{grid-template-columns:180px 1fr;gap:1.5rem}.tag-ad-right{display:none}}@media(max-width:768px){.tag-layout{grid-template-columns:1fr;padding:1.5rem 1rem;gap:0}.tag-ad-left,.tag-ad-right{display:none}.tag-hero{min-height:140px}.tag-hero__content{padding:24px 16px}.tag-hero h1{font-size:24px;margin-bottom:8px}.tag-hero__subtitle{font-size:14px;margin-bottom:8px}.tag-hero__description{font-size:14px}.tag-hero__stats{font-size:12px}.related-tags{padding:1.5rem;margin-bottom:2rem}.tag-tips{padding:.5rem;margin-bottom:.75rem}.tag-tips h2{font-size:1.125rem;margin-bottom:.375rem}.tag-recipes .recipe-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media(max-width:480px){.tag-recipes .recipe-grid{grid-template-columns:1fr;gap:16px}}@media(max-width:480px){.tag-chips{gap:.5rem}.tag-chip{font-size:.8125rem;padding:.4rem .8rem}}.recipe-carousel-container{margin:1rem 0}.carousel-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--theme-text, var(--color-text));text-align:center}.carousel-wrapper{position:relative;display:flex;align-items:center;gap:.5rem}.carousel-track{display:flex;gap:1rem;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:.5rem 0;flex:1}.carousel-track::-webkit-scrollbar{display:none}.carousel-nav{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--theme-border, var(--color-border));background:var(--theme-bg, var(--color-bg));color:var(--theme-text-light, var(--color-text-light));font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1}.carousel-nav:hover{background:var(--theme-primary-light, var(--color-primary-light, #f0f0f0));color:var(--theme-primary, var(--color-primary));border-color:var(--theme-primary, var(--color-primary))}.carousel-card{flex-shrink:0;width:200px;padding:1rem;background:var(--theme-surface, var(--color-surface));border:1px solid var(--theme-border, var(--color-border));border-radius:var(--theme-radius, 8px);box-shadow:var(--theme-shadow-sm, var(--shadow-sm));transition:all .2s ease;display:flex;flex-direction:column;min-height:100px}.carousel-card.clickable{cursor:pointer}.carousel-card.clickable:hover{border-color:var(--theme-primary, var(--color-primary));box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.carousel-card.clickable:focus{outline:2px solid var(--theme-primary, var(--color-primary));outline-offset:2px}.carousel-card-title{font-size:.9rem;font-weight:500;line-height:1.3;margin:0 0 .5rem;color:var(--theme-text, var(--color-text));display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.carousel-card-category{margin-bottom:.5rem}.carousel-card-tags{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.5rem}.carousel-tag{font-size:.65rem;color:var(--theme-text-light, var(--color-text-light));background:var(--theme-bg, #f5f5f5);padding:.125rem .375rem;border-radius:9999px}.carousel-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--theme-text-light, var(--color-text-light));margin-top:auto}.carousel-loading,.carousel-error,.carousel-empty{text-align:center;padding:2rem;color:var(--theme-text-light, var(--color-text-light));font-size:.9rem}.carousel-loading{display:flex;align-items:center;justify-content:center;gap:.75rem}.carousel-loading .spinner{width:20px;height:20px;border:2px solid var(--theme-border, var(--color-border));border-top-color:var(--theme-primary, var(--color-primary));border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.carousel-card{width:160px;padding:.75rem}.carousel-card-title{font-size:.85rem}.carousel-nav{width:32px;height:32px;font-size:1.25rem}}.filter-bar.browse .filter-select{padding:8px 32px 8px 12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;font-size:14px;color:#1a1a1a;cursor:pointer;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.prep-time-select{width:100%;padding:8px 32px 8px 10px;font-size:13px;font-family:Inter,sans-serif;color:#1a1a1a;background:#fff;border:1.5px solid #d0d0d0;border-radius:4px;cursor:pointer;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%236b78a8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem;background:#f5f5f5}.error-boundary__content{max-width:600px;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001f;text-align:center}.error-boundary__icon{font-size:4rem;margin-bottom:1rem}.error-boundary__title{font-family:Playfair Display,Georgia,serif;font-size:1.75rem;font-weight:700;color:#1a1a1a;margin-bottom:.75rem}.error-boundary__message{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;color:#666;line-height:1.6;margin-bottom:1.5rem}.error-boundary__details{margin:1.5rem 0;padding:1rem;background:#f5f5f5;border-radius:6px;text-align:left}.error-boundary__details summary{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.8125rem;font-weight:600;color:#1a1a1a;cursor:pointer;-webkit-user-select:none;user-select:none}.error-boundary__stack{margin-top:.75rem;padding:.75rem;background:#fff;border:1px solid #e5e5e5;border-radius:4px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.6875rem;color:#ef4444;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.error-boundary__actions{display:flex;gap:.75rem;justify-content:center}@media(max-width:768px){.error-boundary__actions{flex-direction:column}.error-boundary__actions button{width:100%}}.route-error{padding:2rem;text-align:center}.route-error h2{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;color:#1a1a1a;margin-bottom:1rem}.route-error p{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;color:#666;margin-bottom:1.5rem}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.loading-spinner .spinner{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:#6b78a8;border-radius:50%;animation:spin .8s linear infinite}.loading-spinner p{margin-top:1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.875rem;color:#999}.image-review-page{max-width:1200px;margin:2rem auto;padding:0 1rem}.image-review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.image-review-filters{display:flex;align-items:center;gap:.5rem}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.image-card{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff}.image-card-thumbnail{width:100%;aspect-ratio:16/9;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.image-card-thumbnail img{width:100%;height:100%;object-fit:cover}.image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#999;padding:2rem}.image-card-content{padding:1rem}.image-card-title{font-size:1.125rem;font-weight:600;margin:0 0 .75rem}.image-card-urls{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding:.75rem;background:#f9f9f9;border-radius:4px}.image-card-url{font-size:.875rem;text-decoration:none;color:#2563eb;display:flex;align-items:center;gap:.25rem}.image-card-url:hover{text-decoration:underline}.image-card-meta{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.image-status{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-queued{background:#fef3c7;color:#92400e}.status-generated{background:#dbeafe;color:#1e40af}.image-priority{font-size:.75rem;color:#666}.image-date{font-size:.75rem;color:#999}.image-card-actions{display:flex;gap:.5rem}.empty-state{text-align:center;padding:3rem 1rem}.empty-state-icon{font-size:3rem;margin-bottom:1rem}.error-container{padding:1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:4px;margin-bottom:1rem}.loading-container{display:flex;justify-content:center;padding:3rem}.google-signin-button-container{display:flex;flex-direction:column;align-items:center;gap:.5rem}.google-signin-button{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;font-family:inherit;color:#3c4043;background-color:#fff;border:1px solid #dadce0;border-radius:4px;cursor:pointer;transition:all .2s ease;min-width:240px;box-shadow:0 1px 3px #0000001a}.google-signin-button:hover:not(:disabled){background-color:#f8f9fa;border-color:#d2d3d4;box-shadow:0 2px 6px #00000026}.google-signin-button:active:not(:disabled){background-color:#f1f3f4;box-shadow:0 1px 2px #0000001a}.google-signin-button:disabled{opacity:.6;cursor:not-allowed}.google-signin-button:focus{outline:2px solid #4285f4;outline-offset:2px}.google-icon{width:24px;height:24px;flex-shrink:0}.google-signin-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,0,0,.1);border-top-color:#4285f4;border-radius:50%;animation:google-signin-spin .8s linear infinite}@keyframes google-signin-spin{to{transform:rotate(360deg)}}.google-signin-error{color:#d93025;font-size:.875rem;text-align:center;padding:.5rem;background-color:#fce8e6;border:1px solid #f5c6cb;border-radius:4px;max-width:300px}@media(prefers-color-scheme:dark){.google-signin-button{color:#e8eaed;background-color:#2d2e30;border-color:#5f6368}.google-signin-button:hover:not(:disabled){background-color:#3c4043;border-color:#5f6368}.google-signin-button:active:not(:disabled){background-color:#4d4e52}.google-signin-error{color:#f28b82;background-color:#3c1f1e;border-color:#5f2120}}@media(max-width:600px){.google-signin-button{min-width:200px;padding:.625rem 1.25rem;font-size:.9375rem}.google-icon{width:20px;height:20px}}.login-page{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.login-container{max-width:900px;width:100%;background:var(--color-surface, #ffffff);border-radius:var(--radius, 4px);border:1px solid var(--color-border, rgba(0, 0, 0, .1));overflow:hidden}.login-header{background:var(--color-surface, #ffffff);color:var(--color-text, #2d3748);padding:2.5rem 2rem;text-align:center;border-bottom:1px solid var(--color-border, rgba(0, 0, 0, .1))}.login-title{font-size:2.5rem;font-weight:700;margin:0 0 .5rem;color:var(--color-text, #2d3748)}.login-subtitle{font-size:1.125rem;margin:0;color:var(--color-text-light, #4a5568)}.login-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:2.5rem 2rem}.login-benefits h2{font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;color:var(--color-text, #2d3748)}.benefits-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.benefits-list li{display:flex;gap:1rem;align-items:flex-start}.benefit-icon{width:24px;height:24px;flex-shrink:0;color:var(--color-primary, #8c97c8);margin-top:.125rem}.benefits-list strong{display:block;font-size:1rem;font-weight:600;color:var(--color-text, #2d3748);margin-bottom:.25rem}.benefits-list p{margin:0;font-size:.875rem;color:var(--color-text-light, #4a5568);line-height:1.4}.login-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem;background:var(--color-background, #f7fafc);border-radius:8px;border:1px solid var(--color-border, #e2e8f0)}.login-button{width:100%}.login-privacy{font-size:.875rem;color:var(--color-text-light, #4a5568);text-align:center;margin:0}.login-link{background:none;border:none;color:var(--color-primary, #8c97c8);text-decoration:underline;cursor:pointer;padding:0;font-size:inherit;font-family:inherit}.login-link:hover{color:var(--color-primary-dark, #6b78a8)}.coming-soon{font-size:.75rem;font-weight:500;color:var(--color-warning, #d4a84d);font-style:italic;white-space:nowrap}.login-footer{background:var(--color-background, #f7fafc);padding:1.5rem 2rem;border-top:1px solid var(--color-border, #e2e8f0)}.login-footnote{font-size:.8125rem;color:var(--color-text-light, #718096);text-align:center;margin:0;line-height:1.5}@media(max-width:768px){.login-page{padding:1rem}.login-title{font-size:2rem}.login-subtitle{font-size:1rem}.login-content{grid-template-columns:1fr;gap:2rem;padding:1.5rem 1rem}.login-benefits h2{font-size:1.25rem}.benefits-list{gap:1.25rem}.benefit-icon{width:20px;height:20px}.login-action{padding:1.5rem 1rem}.login-footer{padding:1rem}}.my-recipes-tabs{width:100%}.tabs{display:flex;gap:.5rem;border-bottom:2px solid var(--color-gray-200);margin-bottom:2rem}.tab{position:relative;padding:1rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:var(--color-gray-600);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.tab:hover{color:var(--color-gray-900);background-color:var(--color-gray-50)}.tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .5rem;background-color:var(--color-gray-200);color:var(--color-gray-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:12px;line-height:1}.tab--active .tab-badge{background-color:#e8eef8;color:#2c5aa0}.tab-panel{min-height:400px}.tab-panel__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.spinner-large{width:48px;height:48px;border:4px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spinner-rotation .8s linear infinite}@keyframes spinner-rotation{to{transform:rotate(360deg)}}.tab-panel__loading p{color:var(--color-gray-600);font-size:var(--font-size-base)}.tab-panel__error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;text-align:center}.tab-panel__error p{color:var(--color-error);font-size:var(--font-size-base);margin:0}.tab-panel__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;text-align:center}.tab-panel__empty h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0}.tab-panel__empty p{font-size:var(--font-size-base);color:var(--color-gray-600);margin:0;max-width:400px}.recipes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:2rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:2rem 0}.pagination__button{padding:.5rem 1rem;background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);color:var(--color-gray-700);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.pagination__button:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-400)}.pagination__button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.pagination__button:disabled{opacity:.5;cursor:not-allowed}.pagination__info{color:var(--color-gray-700);font-size:var(--font-size-base)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;border:none}.btn--primary{background-color:var(--color-primary);color:#fff}.btn--primary:hover{background-color:var(--color-primary-dark);color:#fff}.btn--secondary{background-color:var(--color-white);color:var(--color-primary);border:2px solid var(--color-primary)}.btn--secondary:hover{background-color:var(--color-primary);color:var(--color-white)}@media(max-width:1024px){.recipes-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media(max-width:768px){.tabs{gap:.25rem}.tab{padding:.75rem 1rem;font-size:var(--font-size-sm)}.tab-badge{min-width:1.25rem;height:1.25rem;font-size:var(--font-size-xs)}.recipes-grid{grid-template-columns:1fr;gap:16px}.tab-panel__empty h3{font-size:var(--font-size-lg)}.tab-panel__empty p{font-size:var(--font-size-sm)}}.profile-page{min-height:60vh;padding:2rem 1rem;background:#faf9f7;font-family:Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.profile-container{max-width:900px;margin:0 auto;background:#fff;border-radius:8px;border:1px solid #e8e4df;overflow:hidden;box-shadow:0 2px 8px #8c97c814}.profile-header{background:linear-gradient(135deg,#8c97c8,#6b78a8);color:#fff;padding:2.5rem 2rem;border-bottom:none}.profile-avatar-section{display:flex;align-items:center;gap:1.5rem}.profile-avatar{width:80px;height:80px;border-radius:50%;border:3px solid #ffffff;object-fit:cover;box-shadow:0 4px 12px #00000026}.profile-avatar-placeholder{width:80px;height:80px;border-radius:50%;border:3px solid #ffffff;background:#d4c4a8;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;box-shadow:0 4px 12px #00000026}.profile-name-section{flex:1}.profile-name{font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:700;margin:0 0 .5rem;color:#fff;letter-spacing:-.5px}.profile-email{font-size:1rem;margin:0;color:#ffffffe6;font-weight:400}.profile-content{padding:2.5rem 2rem;display:flex;flex-direction:column;gap:2.5rem}.profile-section{border-bottom:1px solid #e8e4df;padding-bottom:2.5rem}.profile-section:last-child{border-bottom:none;padding-bottom:0}.section-title{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:600;color:#6b78a8;margin:0 0 1.5rem;letter-spacing:-.3px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-label{font-size:.875rem;font-weight:600;color:#8c97c8;text-transform:uppercase;letter-spacing:.8px}.tier-badge{display:inline-flex;align-items:center;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;border-radius:6px;width:fit-content;letter-spacing:.3px}.tier-badge-free{background:#e8e4df;color:#5a5550}.tier-badge-freemium{background:#d4c4a8;color:#5a5550}.tier-badge-premium{background:#8c97c8;color:#fff}.tier-badge-professional{background:#6b78a8;color:#fff}.tier-badge-admin{background:linear-gradient(135deg,#8c97c8,#6b78a8);color:#fff;border:2px solid #d4c4a8}.status-badge{display:inline-flex;align-items:center;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;border-radius:6px;width:fit-content;letter-spacing:.3px}.status-badge-active{background:#d4c4a8;color:#5a5550}.status-badge-trialing{background:#8c97c8;color:#fff}.status-badge-past-due{background:#f0b990;color:#8b4513}.status-badge-canceled{background:#f5e6e8;color:#8b4513}.status-badge-default{background:#e8e4df;color:#5a5550}.usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.stat-card{display:flex;gap:1.25rem;padding:1.75rem;background:#faf9f7;border-radius:8px;border:1px solid #e8e4df;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8c97c81f}.stat-icon{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8c97c8,#6b78a8);color:#fff;border-radius:8px;box-shadow:0 2px 8px #8c97c833}.stat-icon svg{width:24px;height:24px}.stat-content{flex:1}.stat-label{font-size:.875rem;font-weight:600;color:#8c97c8;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:700;color:#6b78a8;margin:0 0 .25rem}.stat-detail{font-size:.8125rem;color:#888;margin:0}.action-buttons{display:flex;flex-wrap:wrap;gap:1rem}.action-button{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;font-family:Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;border-radius:8px;border:none;cursor:pointer;transition:all .3s ease;letter-spacing:.3px}.action-button svg{width:20px;height:20px}.action-button-primary{background:linear-gradient(135deg,#8c97c8,#6b78a8);color:#fff;box-shadow:0 2px 8px #8c97c84d}.action-button-primary:hover{background:linear-gradient(135deg,#6b78a8,#5a668c);transform:translateY(-1px);box-shadow:0 4px 12px #8c97c866}.action-button-upgrade{background:#d4c4a8;color:#5a5550;box-shadow:0 2px 8px #d4c4a84d}.action-button-upgrade:hover{background:#c4b498;transform:translateY(-1px);box-shadow:0 4px 12px #d4c4a866}@media(max-width:768px){.profile-page{padding:1rem}.profile-header{padding:2rem 1.5rem}.profile-avatar-section{flex-direction:column;align-items:flex-start;gap:1rem}.profile-avatar,.profile-avatar-placeholder{width:64px;height:64px}.profile-name{font-size:1.5rem}.profile-email{font-size:.875rem}.profile-content{padding:2rem 1.5rem}.section-title{font-size:1.25rem}.info-grid,.usage-stats{grid-template-columns:1fr}.stat-value{font-size:1.5rem}.action-buttons{flex-direction:column}.action-button{width:100%;justify-content:center}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html:focus-within{scroll-behavior:smooth}body{min-height:100vh;line-height:1.5;text-rendering:optimizeSpeed}ul[role=list],ol[role=list]{list-style:none}button{background:none;border:none;font:inherit;cursor:pointer}img,picture,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--color-primary: #6b78a8;--color-primary-dark: #5a6690;--color-primary-light: #8c97c8;--color-primary-ghost: rgba(107, 120, 168, .1);--color-herb-green: #5C8A62;--color-herb-light: #7BA882;--color-gl-low: #10b981;--color-gl-low-bg: #ecfdf5;--color-gl-low-border: #d1fae5;--color-gl-medium: #f59e0b;--color-gl-medium-bg: #fffbeb;--color-gl-medium-border: #fef3c7;--color-gl-high: #ef4444;--color-gl-high-bg: #fef2f2;--color-gl-high-border: #fee2e2;--color-text-primary: #1a1a1a;--color-text-secondary: #666666;--color-text-light: #999999;--color-bg-primary: #ffffff;--color-bg-secondary: #fafafa;--color-bg-tertiary: #f5f5f5;--color-border-light: #f0f0f0;--color-border-medium: #e5e5e5;--color-border-dark: #d0d0d0;--color-error: #ef4444;--color-warning: #f59e0b;--color-success: #10b981;--color-info: #6b78a8;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .08);--shadow-xl: 0 8px 24px rgba(0, 0, 0, .12);--shadow-2xl: 0 12px 32px rgba(0, 0, 0, .15);--shadow-primary: 0 4px 12px rgba(107, 120, 168, .2);--shadow-primary-lg: 0 8px 24px rgba(107, 120, 168, .25);--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "SF Mono", Monaco, "Courier New", monospace;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: .9375rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.25rem;--text-3xl: 1.5rem;--text-4xl: 1.75rem;--text-5xl: 2rem;--text-6xl: 2.25rem;--leading-none: 1;--leading-tight: 1.2;--leading-snug: 1.3;--leading-normal: 1.5;--leading-relaxed: 1.6;--leading-loose: 1.7;--weight-light: 300;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1200px;--container-2xl: 1400px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1200px;--breakpoint-2xl: 1400px}@media(max-width:768px){:root{--text-5xl: 1.75rem;--text-4xl: 1.5rem;--text-3xl: 1.25rem}}body{font-family:Inter,-apple-system,sans-serif;font-size:16px;line-height:1.6;color:#1a1a1a;background-color:#fafafa;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--color-text-primary);line-height:var(--leading-tight);margin-bottom:var(--space-4)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}h4{font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}h5{font-size:var(--text-lg);font-weight:var(--weight-semibold)}h6{font-size:var(--text-base);font-weight:var(--weight-semibold)}p{margin-bottom:var(--space-4)}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-dark);text-decoration:underline}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}ul,ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}li{margin-bottom:var(--space-2)}code{font-family:var(--font-mono);font-size:.9em;background:var(--color-bg-tertiary);padding:.125rem .25rem;border-radius:var(--radius-sm)}pre{font-family:var(--font-mono);background:var(--color-bg-tertiary);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-4)}pre code{background:none;padding:0}blockquote{border-left:4px solid var(--color-primary);padding-left:var(--space-4);margin:var(--space-6) 0;font-style:italic;color:var(--color-text-secondary)}hr{border:none;border-top:1px solid var(--color-border-medium);margin:var(--space-8) 0}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-6)}th,td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--color-border-light)}th{font-weight:var(--weight-semibold);color:var(--color-text-primary);background:var(--color-bg-tertiary)}input[type=text],input[type=email],input[type=password],input[type=url],input[type=search],textarea,select{display:block;width:100%;padding:var(--space-3);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);transition:all .2s ease}label{display:block;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-2)}strong,b{font-weight:var(--weight-bold)}em,i{font-style:italic}small{font-size:var(--text-sm);color:var(--color-text-light)}.container{width:100%;max-width:var(--container-xl);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}.container-sm{width:100%;max-width:var(--container-sm);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}.container-lg{width:100%;max-width:var(--container-2xl);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}.grid{display:grid;gap:var(--space-6)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}@media(min-width:769px)and (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}.flex{display:flex;gap:var(--space-4)}.flex-center{display:flex;align-items:center;justify-content:center;gap:var(--space-4)}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.flex-start{display:flex;align-items:flex-start;justify-content:flex-start;gap:var(--space-4)}.flex-end{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-4)}.flex-col{display:flex;flex-direction:column;gap:var(--space-4)}.flex-wrap{flex-wrap:wrap}@media(max-width:768px){.flex-mobile-col{flex-direction:column}}.btn-primary{padding:var(--space-3) var(--space-5);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-primary)}.btn-primary:active{transform:translateY(0)}.btn-primary[data-loading=true]{opacity:.6;pointer-events:none}.btn-primary:disabled,.btn-primary[disabled]{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{padding:var(--space-3) var(--space-5);background:#fff;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-secondary:hover{background:var(--color-primary-ghost)}.btn-secondary:active{background:var(--color-primary-ghost);transform:scale(.98)}.btn-secondary[data-loading=true]{opacity:.6;pointer-events:none}.btn-secondary:disabled,.btn-secondary[disabled]{opacity:.5;cursor:not-allowed}.btn-ghost{padding:var(--space-2) var(--space-4);background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-ghost:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-ghost)}.btn-ghost:active{background:var(--color-primary-ghost);transform:scale(.98)}.btn-ghost[data-loading=true]{opacity:.6;pointer-events:none}.btn-ghost:disabled,.btn-ghost[disabled]{opacity:.5;cursor:not-allowed}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn-md{padding:var(--space-3) var(--space-5);font-size:var(--text-sm)}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-base)}.btn-success{background:var(--color-success);color:#fff;border:none}.btn-success:hover{background:var(--color-herb-green)}.btn-error{background:var(--color-error);color:#fff;border:none}.btn-error:hover{background:#dc2626}.btn-warning{background:var(--color-warning);color:#fff;border:none}.btn-warning:hover{background:#d97706}.btn-full{width:100%}.btn-icon{padding:var(--space-2);width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.btn-icon svg,.btn-icon img{width:20px;height:20px}.gl-badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-family:var(--font-body);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.gl-badge--sm{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.gl-badge--md{font-size:var(--text-sm);padding:var(--space-1) var(--space-3)}.gl-badge--lg{font-size:var(--text-base);padding:var(--space-2) var(--space-4)}.gl-badge--low{background:var(--color-gl-low-bg);color:var(--color-gl-low);border:1px solid var(--color-gl-low-border)}.gl-badge--medium{background:var(--color-gl-medium-bg);color:var(--color-gl-medium);border:1px solid var(--color-gl-medium-border)}.gl-badge--high{background:var(--color-gl-high-bg);color:var(--color-gl-high);border:1px solid var(--color-gl-high-border)}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.badge--primary{background:var(--color-primary-ghost);color:var(--color-primary);border:1px solid var(--color-primary-light)}.badge--success{background:var(--color-gl-low-bg);color:var(--color-gl-low);border:1px solid var(--color-gl-low-border)}.badge--warning{background:var(--color-gl-medium-bg);color:var(--color-gl-medium);border:1px solid var(--color-gl-medium-border)}.badge--error{background:var(--color-gl-high-bg);color:var(--color-gl-high);border:1px solid var(--color-gl-high-border)}.badge--neutral{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border-medium)}.recipe-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);overflow:hidden;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-md);border:2px solid transparent;display:flex;flex-direction:column}.recipe-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}.recipe-card.low:hover{border-color:var(--color-gl-low)}.recipe-card.medium:hover{border-color:var(--color-gl-medium)}.recipe-card.high:hover{border-color:var(--color-gl-high)}.recipe-card__image{position:relative;width:100%;height:200px;background:var(--color-bg-tertiary)}.recipe-card__image img{width:100%;height:100%;object-fit:cover}.recipe-card__image .gl-badge{position:absolute;top:var(--space-3);right:var(--space-3)}.recipe-card__content{padding:var(--space-4);flex:1;display:flex;flex-direction:column}.recipe-card__category{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin-bottom:var(--space-2)}.recipe-card__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text-primary);line-height:var(--leading-tight);margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card__meta{display:flex;gap:var(--space-4);font-size:var(--text-sm);color:var(--color-text-light);margin-top:auto}.recipe-card__meta-item{display:flex;align-items:center;gap:var(--space-1)}.content-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-md);border:1px solid var(--color-border-light);transition:box-shadow .2s ease}.content-card:hover{box-shadow:var(--shadow-lg)}.content-card__header{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light)}.content-card__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.content-card__description{font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.content-card__body{font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-normal)}.content-card__footer{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.sidebar-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);box-shadow:var(--shadow-md);border:1px solid var(--color-border-light)}.sidebar-card__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.sidebar-card__content{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-normal)}.gl-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md);text-align:center}.gl-card.low{background:var(--color-gl-low-bg);border:2px solid var(--color-gl-low-border)}.gl-card.medium{background:var(--color-gl-medium-bg);border:2px solid var(--color-gl-medium-border)}.gl-card.high{background:var(--color-gl-high-bg);border:2px solid var(--color-gl-high-border)}.gl-card__value{font-family:var(--font-display);font-size:var(--text-5xl);font-weight:var(--weight-bold);line-height:var(--leading-none);margin-bottom:var(--space-2)}.gl-card.low .gl-card__value{color:var(--color-gl-low)}.gl-card.medium .gl-card__value{color:var(--color-gl-medium)}.gl-card.high .gl-card__value{color:var(--color-gl-high)}.gl-card__label{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light)}.stats-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);text-align:center}.stats-card__value{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.stats-card__label{font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light)}@media(max-width:768px){.recipe-card__image{height:160px}.recipe-card__title{font-size:var(--text-lg)}.content-card{padding:var(--space-4)}.content-card__title{font-size:var(--text-xl)}.gl-card__value{font-size:var(--text-4xl)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:400px;padding:var(--space-8) var(--space-4)}.empty-state__icon{font-size:64px;line-height:1;margin-bottom:var(--space-6);-webkit-user-select:none;user-select:none}.empty-state__title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-4) 0;line-height:var(--leading-tight)}.empty-state__message{font-family:var(--font-body);font-size:var(--text-lg);color:var(--color-text-light);margin:0 0 var(--space-6) 0;max-width:480px;line-height:var(--leading-relaxed)}.empty-state__action{margin-top:var(--space-2)}.empty-state--search .empty-state__icon{color:var(--color-primary)}.empty-state--empty .empty-state__icon{color:var(--color-herb-green)}.empty-state--filtered .empty-state__icon{color:var(--color-text-light)}@media(max-width:768px){.empty-state{min-height:300px;padding:var(--space-6) var(--space-4)}.empty-state__icon{font-size:48px;margin-bottom:var(--space-4)}.empty-state__title{font-size:var(--text-2xl)}.empty-state__message{font-size:var(--text-base)}}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-2)}.form-group label.required:after{content:"*";color:var(--color-error);margin-left:var(--space-1)}input[type=text],input[type=email],input[type=password],input[type=url],input[type=search],input[type=number],textarea,select{display:block;width:100%;padding:var(--space-3);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);transition:all .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ghost)}input[data-error=true],textarea[data-error=true],select[data-error=true]{border-color:var(--color-error)}input[data-error=true]:focus,textarea[data-error=true]:focus,select[data-error=true]:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}input[data-success=true],textarea[data-success=true],select[data-success=true]{border-color:var(--color-success)}input[data-success=true]:focus,textarea[data-success=true]:focus,select[data-success=true]:focus{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9811a}input:disabled,textarea:disabled,select:disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-bg-tertiary)}input::placeholder,textarea::placeholder{color:var(--color-text-light)}textarea{min-height:120px;resize:vertical}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-8)}input[type=checkbox],input[type=radio]{width:18px;height:18px;margin-right:var(--space-2);cursor:pointer;accent-color:var(--color-primary)}.checkbox-label,.radio-label{display:flex;align-items:center;cursor:pointer;font-size:var(--text-base);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.checkbox-label input,.radio-label input{margin:0;margin-right:var(--space-2)}.form-error{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-error)}.form-success{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-success)}.form-help{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-light);line-height:var(--leading-relaxed)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.form-row .form-group{margin-bottom:0}@media(max-width:768px){.form-row{grid-template-columns:1fr}.form-row .form-group{margin-bottom:var(--space-4)}.form-row .form-group:last-child{margin-bottom:0}}.search-input-wrapper{position:relative}.search-input-wrapper input{padding-left:var(--space-10)}.search-input-wrapper .search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-text-light);pointer-events:none}.input-with-icon{position:relative}.input-with-icon input{padding-left:var(--space-10)}.input-with-icon .icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-text-light);pointer-events:none}.form-actions{display:flex;gap:var(--space-3);margin-top:var(--space-6)}.form-actions button{flex:1}@media(max-width:768px){.form-actions{flex-direction:column}.form-actions button{width:100%}}.top-bar{background:#6b78a8;color:#fff;padding:8px 0;font-size:13px;text-align:center;font-weight:500}.header{background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:1000;box-shadow:0 2px 8px #0000000a}.header-content{padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:70px;max-width:1200px;margin:0 auto}.logo{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:#6b78a8;text-decoration:none}.main-nav{display:flex;gap:32px;align-items:center}.main-nav .nav-item{text-decoration:none;color:#1a1a1a;font-weight:500;font-size:15px;transition:color .2s}.main-nav .nav-item:hover{color:#6b78a8}.hamburger-btn{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:6px;gap:5px;align-items:center;z-index:1100}.hamburger-btn span{width:24px;height:2px;background:#1a1a1a;display:block;transition:all .3s ease}.hamburger-btn.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger-btn.active span:nth-child(2){opacity:0}.hamburger-btn.active span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}.auth-menu{display:flex;align-items:center;gap:16px;position:relative}.google-login-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;background:#fff;border:1px solid #dadce0;border-radius:6px;font-size:14px;font-weight:500;color:#3c4043;text-decoration:none;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #00000014}.google-login-btn:hover{background:#f8f9fa;border-color:#8b9dc3;box-shadow:0 2px 6px #0000001f}.google-login-btn:active{transform:scale(.98)}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6b78a8,#8c97c8);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #6b78a833;border:2px solid white}.user-avatar:hover{box-shadow:0 4px 12px #6b78a84d;transform:scale(1.05)}.user-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.profile-menu{position:absolute;top:55px;right:0;background:#fff;border-radius:8px;box-shadow:0 8px 24px #0000001f;min-width:220px;max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0;z-index:2000}.profile-menu.active{max-height:400px;opacity:1}.profile-menu-header{padding:16px;border-bottom:1px solid #f0f0f0}.profile-user-info{display:flex;align-items:center;gap:12px}.profile-avatar-small{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#6b78a8,#8c97c8);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:13px;flex-shrink:0}.profile-avatar-small img{width:100%;height:100%;border-radius:50%;object-fit:cover}.profile-name{display:flex;flex-direction:column;min-width:0}.profile-full-name{font-size:13px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-email{font-size:11px;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-menu-items{padding:8px 0}.profile-menu-item{display:block;width:100%;padding:10px 16px;color:#1a1a1a;text-decoration:none;font-size:13px;background:none;border:none;text-align:left;cursor:pointer;transition:background .2s}.profile-menu-item:hover{background:#f8f8f8}.profile-menu-divider{height:1px;background:#f0f0f0;margin:8px 0}.profile-menu-item.logout{color:#ef4444}.profile-menu-item.logout:hover{background:#fee2e2}@media(max-width:768px){.hamburger-btn{display:flex}.main-nav{position:fixed;top:70px;left:-100%;width:100%;height:calc(100vh - 70px);background:#fff;flex-direction:column;align-items:flex-start;padding:20px 24px;gap:0;transition:left .3s ease;z-index:999}.main-nav.active{left:0}.main-nav .nav-item{width:100%;padding:16px 0;border-bottom:1px solid #f0f0f0}.main-nav .nav-item:last-child{border-bottom:none}}.footer{background:#1a1a1a;color:#fff;padding:40px 24px 24px;margin-top:50px}.footer-content{max-width:1200px;margin:0 auto 32px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px}.footer-about h3{font-family:Playfair Display,serif;font-size:28px;margin-bottom:16px;color:#6b78a8}.footer-about p{color:#fff;opacity:.7;line-height:1.7;font-size:14px}.footer-column h4{color:#fff;font-weight:700;margin-bottom:16px;font-size:14px;text-transform:uppercase;letter-spacing:.05em}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:12px}.footer-links a{color:#999;text-decoration:none;font-size:13px;transition:color .2s}.footer-links a:hover{color:#fff}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:24px;border-top:1px solid #333;text-align:center;font-size:12px;color:#666}@media(max-width:1024px){.footer-content{grid-template-columns:1fr 1fr;gap:32px}.footer-about{grid-column:1 / -1}}@media(max-width:768px){.footer{padding:32px 16px 16px;margin-top:32px}.footer-content{grid-template-columns:1fr;gap:24px;margin-bottom:24px}.footer-about h3{font-size:24px}.footer-about p,.footer-column h4{font-size:13px}.footer-links a{font-size:12px}.footer-bottom{padding-top:16px;font-size:11px}}.breadcrumbs{background:#fff;border-bottom:1px solid #f0f0f0;padding:12px 0;font-size:13px}.breadcrumbs-content{padding:0 24px;color:#999;max-width:1200px;margin:0 auto}.breadcrumbs__list{padding:0 24px;max-width:1200px;margin:0 auto}.breadcrumbs-content a{color:#6b78a8;text-decoration:none;transition:color .2s}.breadcrumbs-content a:hover{color:#5a6690;text-decoration:underline}.breadcrumbs-content span{color:#999}.breadcrumbs__list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;padding:0 24px;max-width:1200px;margin:0 auto;font-size:13px}.breadcrumbs__item{display:flex;align-items:center;gap:8px;color:#999}.breadcrumbs__item a{color:#6b78a8;text-decoration:none;transition:color .2s}.breadcrumbs__item a:hover{color:#5a6690;text-decoration:underline}.breadcrumbs__separator{color:#999;-webkit-user-select:none;user-select:none}.breadcrumbs__item span[aria-current=page]{color:#999;font-weight:400}.category-nav{background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:70px;z-index:999}.category-nav__container{max-width:1200px;margin:0 auto}.category-tabs,.category-nav__tabs{padding:0 24px;display:flex;gap:40px;overflow-x:auto;scrollbar-width:thin}.category-tab,.category-nav__tab{padding:16px 0;font-size:14px;font-weight:600;color:#666;text-decoration:none;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;flex-shrink:0}.category-tab:hover,.category-nav__tab:hover{color:#6b78a8}.category-tab.active,.category-nav__tab--active{color:#6b78a8;border-bottom-color:#6b78a8}.category-tabs::-webkit-scrollbar,.category-nav__tabs::-webkit-scrollbar{height:0}@media(max-width:768px){.category-nav{top:70px}.category-tabs,.category-nav__tabs{gap:24px;padding:0 16px}.category-tab,.category-nav__tab{padding:12px 0;font-size:13px}}.hero{background:linear-gradient(135deg,#6b78a8,#8c97c8);color:#fff;padding:32px 24px;text-align:center}.hero-content{max-width:1000px;margin:0 auto}.hero h1{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:#fff;margin-bottom:10px;line-height:1.3}.hero p{font-size:15px;color:#fff;opacity:.95;margin-bottom:20px;line-height:1.5}.extraction-form{background:#fffffff2;border-radius:12px;padding:24px;max-width:600px;margin:24px auto 0;box-shadow:0 10px 40px #00000026}.form-tabs{display:flex;gap:8px;margin-bottom:20px}.form-tab{flex:1;padding:12px 16px;border:2px solid #e5e5e5;background:#fff;color:#666;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .3s ease;border-radius:6px}.form-tab:hover:not(.active){border-color:#6b78a8;color:#6b78a8;background:#6b78a80d}.form-tab.active{background:#6b78a8;color:#fff;border-color:#6b78a8;box-shadow:0 4px 12px #6b78a840}.form-group{margin-bottom:16px;text-align:left}.form-label{display:block;font-size:12px;font-weight:600;color:#1a1a1a;margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}.form-input{width:100%;padding:12px 14px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;color:#1a1a1a;font-family:Inter,-apple-system,sans-serif;transition:border-color .2s}.form-input:focus{outline:none;border-color:#6b78a8;box-shadow:0 0 0 3px #6b78a81a}.form-input:disabled{background:#f5f5f5;cursor:not-allowed}.extract-btn{width:100%;padding:14px 20px;background:#6b78a8;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.extract-btn:hover{background:#5a6690;transform:translateY(-1px);box-shadow:0 4px 12px #6b78a84d}.extract-btn:active{transform:translateY(0)}.extract-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.how-it-works-content{text-align:left;padding:8px 0}.how-it-works-content h4{font-size:13px;font-weight:600;margin-bottom:12px;text-transform:uppercase;letter-spacing:.05em;color:#6b78a8}.how-it-works-content ul{margin-left:16px;margin-bottom:10px}.how-it-works-content li{margin-bottom:8px;font-size:14px;color:#1a1a1a;line-height:1.5}.how-it-works-content strong{color:#6b78a8;font-weight:600}.form-error{padding:12px;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px;margin-bottom:16px;text-align:left}@media(max-width:768px){.hero{padding:20px 24px}.hero h1{font-size:24px;margin-bottom:8px}.hero p{font-size:14px;margin-bottom:16px}.extraction-form{padding:16px;max-width:100%}.form-tabs{flex-direction:column;margin-bottom:12px}.form-tab{padding:10px 12px;font-size:12px}.form-label{font-size:11px}.form-input{padding:10px 12px;font-size:13px}.extract-btn{padding:11px 16px;font-size:12px}}.featured-section{margin-bottom:var(--space-8, 2rem)}.featured-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5, 1.25rem)}.featured-section__title{font-family:Playfair Display,serif;font-size:28px;font-weight:700;color:#1a1a1a;margin:0}.featured-section__link{font-size:var(--text-sm, .875rem);font-weight:600;color:var(--color-primary);text-decoration:none;transition:color .2s ease}.featured-section__link:hover{color:var(--color-primary-dark, #5a6690)}.featured-section__loading{text-align:center;padding:var(--space-8, 2rem);color:var(--color-text-light, #666)}.featured-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-5, 1.25rem)}.featured-main{position:relative;border-radius:var(--radius-lg, 12px);overflow:hidden;height:380px;text-decoration:none;display:block;transition:transform .3s ease}.featured-main:hover{transform:translateY(-4px)}.featured-main__image{position:relative;width:100%;height:100%;background-size:cover;background-position:center;background-color:var(--color-primary)}.featured-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;padding:var(--space-6, 1.5rem);display:flex;flex-direction:column;justify-content:flex-end}.featured-category{font-size:var(--text-xs, .6875rem);text-transform:uppercase;letter-spacing:.05em;font-weight:600;opacity:.8;margin-bottom:var(--space-2, .5rem);color:#fff}.featured-title{font-family:var(--font-display);font-size:var(--text-xl, 1.25rem);font-weight:700;margin-bottom:var(--space-2, .5rem);line-height:1.3;color:#fff}.featured-excerpt{font-size:var(--text-sm, .875rem);opacity:.9;margin-bottom:var(--space-3, .75rem);line-height:1.5;color:#fff}.featured-meta{font-size:var(--text-xs, .6875rem);opacity:.8;display:flex;gap:0;color:#fff}.featured-meta span:not(:last-child):after{content:" • ";margin:0 8px;opacity:.6}.featured-side{display:flex;flex-direction:column;gap:var(--space-5, 1.25rem)}.side-card{position:relative;border-radius:var(--radius-md, 8px);overflow:hidden;height:180px;text-decoration:none;display:block;transition:transform .3s ease}.side-card:hover{transform:translateY(-4px)}.side-card__image{position:relative;width:100%;height:100%;background-size:cover;background-position:center}.side-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);color:#fff;padding:var(--space-4, 1rem);display:flex;flex-direction:column;justify-content:flex-end}.side-title{font-family:var(--font-display);font-size:var(--text-base, 1rem);font-weight:600;line-height:1.3;margin:0;color:#fff}@media(max-width:1024px){.featured-grid{grid-template-columns:1fr;gap:var(--space-4, 1rem)}.featured-main{height:300px}.featured-side{flex-direction:row;gap:var(--space-3, .75rem)}.side-card{height:150px;flex:1}}@media(max-width:768px){.featured-section__title{font-size:var(--text-xl, 1.25rem)}.featured-main{height:250px}.featured-side{flex-direction:column}.side-card{height:180px}}.sidebar{display:flex;flex-direction:column;gap:var(--space-5, 1.25rem)}.sidebar-section{background:#fff;border-radius:var(--radius-md, 8px);padding:var(--space-4, 1rem);box-shadow:0 2px 8px #0000000f}.sidebar-title{font-family:var(--font-display);font-size:var(--text-base, 1rem);font-weight:700;margin-bottom:var(--space-3, .75rem);color:var(--color-text);margin-top:0}.ad-space{background:#f5f5f5;border:2px dashed #d0d0d0;border-radius:var(--radius-sm, 4px);min-height:280px;display:flex;align-items:center;justify-content:center}.ad-space--250{min-height:250px}.ad-placeholder{font-size:var(--text-sm, .875rem);color:#999;text-align:center;line-height:1.5}.trending-list{list-style:none;margin:0;padding:0}.trending-item{display:flex;gap:var(--space-3, .75rem);padding:var(--space-2, .5rem) 0;border-bottom:1px solid #f0f0f0;font-size:var(--text-sm, .875rem)}.trending-item:last-child{border-bottom:none}.trending-number{font-weight:700;color:var(--color-primary);min-width:20px;flex-shrink:0}.trending-title{color:var(--color-text);line-height:1.4;cursor:pointer;transition:color .2s ease;text-decoration:none}.trending-title:hover{color:var(--color-primary);text-decoration:underline}.trending-title:focus{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.trending-title:focus:not(:focus-visible){outline:none}.trending-title:visited{color:var(--color-text)}.trending-skeleton{list-style:none;margin:0;padding:0}.skeleton-item{display:flex;gap:var(--space-3, .75rem);padding:var(--space-2, .5rem) 0;border-bottom:1px solid #f0f0f0;align-items:flex-start}.skeleton-item:last-child{border-bottom:none}.skeleton-number{min-width:20px;height:16px;background:linear-gradient(90deg,#f0f0f0,#e0e0e0,#f0f0f0);background-size:200% 100%;border-radius:3px;animation:skeleton-shimmer 1.5s ease-in-out infinite}.skeleton-text{flex:1;height:16px;background:linear-gradient(90deg,#f0f0f0,#e0e0e0,#f0f0f0);background-size:200% 100%;border-radius:3px;animation:skeleton-shimmer 1.5s ease-in-out infinite}.skeleton-text--short{width:75%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.newsletter-description{font-size:var(--text-sm, .875rem);color:#666;margin-bottom:var(--space-4, 1rem);line-height:1.5}.newsletter-form{display:flex;flex-direction:column;gap:var(--space-2, .5rem)}.newsletter-input{padding:var(--space-2, .5rem) var(--space-3, .75rem);border:1px solid var(--color-border, #e5e5e5);border-radius:var(--radius-sm, 4px);font-size:var(--text-sm, .875rem);font-family:var(--font-body);transition:border-color .2s ease}.newsletter-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6b78a81a}.newsletter-btn{padding:var(--space-2, .5rem) var(--space-4, 1rem);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm, 4px);font-weight:600;font-size:var(--text-sm, .875rem);cursor:pointer;transition:background .2s ease}.newsletter-btn:hover{background:var(--color-primary-dark, #5a6690)}.newsletter-btn:active{transform:scale(.98)}.newsletter-success{font-size:var(--text-sm, .875rem);color:var(--color-herb-green, #5C8A62);padding:var(--space-3, .75rem);background:#5c8a621a;border-radius:var(--radius-sm, 4px);text-align:center;margin:0}@media(max-width:1024px){.sidebar{margin-top:var(--space-6, 1.5rem)}}@media(max-width:768px){.sidebar{gap:var(--space-4, 1rem)}.sidebar-section{padding:var(--space-3, .75rem)}.ad-space,.ad-space--250{min-height:200px}}.faq-section{background:#fff;padding:32px;border-radius:12px;margin-bottom:48px;box-shadow:0 2px 8px #0000000f}.faq-section__header h2{font-family:Playfair Display,serif;font-size:28px;font-weight:700;margin-bottom:16px;color:#1a1a1a}.faq-section__items{display:flex;flex-direction:column}.faq-item{margin-bottom:6px;border-bottom:1px solid #f0f0f0;padding-bottom:6px}.faq-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.faq-item__question{width:100%;font-size:14px;font-weight:600;color:#1a1a1a;cursor:pointer;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;padding:4px 0;background:none;border:none;text-align:left}.faq-item__question:hover{color:#6b78a8}.faq-item__icon{font-size:18px;color:#6b78a8;transition:transform .3s;display:inline-block;width:18px;height:18px;text-align:center;line-height:1;flex-shrink:0}.faq-item[data-expanded=true] .faq-item__icon{transform:rotate(45deg)}.faq-item__answer{padding:2px 0 0;margin-top:4px;font-size:13px;color:#666;line-height:1.5}.faq-item__answer[hidden]{display:none}.faq-item__answer:not([hidden]){animation:slideDown .3s ease}.faq-item__answer p{margin:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.faq-section{padding:20px}.faq-section__header h2{font-size:24px}.faq-item__question{font-size:13px}.faq-item__answer{font-size:12px}}.recipe-grid-section{margin-bottom:48px}.recipe-grid-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.recipe-grid-section__header h2{font-family:Playfair Display,serif;font-size:28px;font-weight:700;color:#1a1a1a;margin:0}.recipe-grid-section__view-all{font-size:14px;font-weight:500;color:#6b78a8;text-decoration:none;transition:color .2s ease}.recipe-grid-section__view-all:hover{color:#5a6690;text-decoration:underline}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:48px}.recipe-grid-loading{text-align:center;padding:48px;display:flex;flex-direction:column;align-items:center;gap:16px}.recipe-grid-loading .spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#6b78a8;border-radius:50%;animation:spin .8s linear infinite}.recipe-grid-loading span{font-size:14px;color:#666}.recipe-grid-error{text-align:center;padding:48px}.recipe-grid-error p{font-size:14px;color:#dc2626}.recipe-grid-empty{text-align:center;padding:48px;font-size:14px;color:#666}@media(max-width:1024px){.recipe-grid{grid-template-columns:repeat(2,1fr);gap:16px}.recipe-grid-section__header h2{font-size:24px}}@media(max-width:768px){.recipe-grid-section__header{flex-direction:column;align-items:flex-start;gap:12px}.recipe-grid-section__header h2{font-size:22px}.recipe-grid{grid-template-columns:1fr;gap:16px}}.recipe-hero-image{width:100%;margin:0 auto;display:flex;justify-content:center;align-items:center;background-color:var(--color-gray-100, #f5f5f5)}.recipe-hero-image img{width:100%;height:auto;display:block;object-fit:cover;max-height:300px}@media(min-width:769px){.recipe-hero-image{width:30%;max-width:400px}.recipe-hero-image img{border-radius:8px;box-shadow:0 4px 12px #0000001a}}@media(max-width:768px){.recipe-hero-image{width:100%}.recipe-hero-image img{border-radius:0}}.recipe-hero-image-loading{width:100%;padding:2rem;text-align:center;background-color:var(--color-gray-100, #f5f5f5)}.recipe-hero{position:relative;width:100%;height:160px;overflow:hidden}.recipe-hero__background{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#6b78a8,#8c97c8);z-index:0}.recipe-hero__overlay{position:relative;z-index:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem}.recipe-hero__container{max-width:var(--max-width, 1200px);width:100%;color:#fff}.recipe-hero .breadcrumbs{margin-bottom:.75rem}.recipe-hero .breadcrumbs__list{color:#ffffffe6}.recipe-hero .breadcrumbs a{color:#ffffffe6;text-decoration:none}.recipe-hero .breadcrumbs a:hover{color:#fff;text-decoration:underline}.recipe-hero .breadcrumbs__separator{color:#ffffffb3}.recipe-hero__meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem;font-size:.875rem}.recipe-hero__meta-item{display:inline-flex;align-items:center;gap:.25rem;color:#fffffff2}.recipe-hero__meta-separator{color:#ffffffb3;margin:0 .25rem}.recipe-hero__title{font-family:var(--font-heading, "Playfair Display", serif);font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 .5rem;color:#fff}.recipe-hero__description{font-size:1rem;line-height:1.5;color:#fffffff2;margin:0;max-width:800px}@media(max-width:768px){.recipe-hero{height:133px}.recipe-hero__overlay{padding:1rem}.recipe-hero__meta{gap:.75rem;font-size:.8125rem}.recipe-hero__title{font-size:1.5rem}.recipe-hero__description{font-size:.875rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}@media(max-width:480px){.recipe-hero{height:120px}.recipe-hero__title{font-size:1.25rem}.recipe-hero__meta{font-size:.75rem;gap:.5rem}.recipe-hero__description{display:none}}.recipe-details{display:flex;flex-direction:column;gap:1.5rem}.description{font-size:14px;line-height:1.5;color:#666;font-weight:600;margin-bottom:12px}.recipe-meta{display:flex;gap:24px;flex-wrap:wrap;padding:12px 0;margin-bottom:16px;border-bottom:2px solid #f0f0f0;font-size:14px}.recipe-meta-item{display:flex;align-items:center;gap:6px;color:#333}.recipe-meta .meta-icon{font-size:16px}.recipe-meta .meta-label{font-weight:600;color:#666}.recipe-meta .meta-value{color:#1a1a1a;font-weight:500}.recipe-section{padding-bottom:1.5rem}.recipe-section:last-child{padding-bottom:0}.recipe-section__title,.section-title{font-family:Playfair Display,serif;font-size:20px;font-weight:700;margin-bottom:12px;color:#1a1a1a}.recipe-meta-block{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.recipe-meta-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.recipe-meta-label{font-weight:600;color:#6b7280}.recipe-meta-value{color:#111827}.recipe-source-link{color:#6b78a8;text-decoration:none}.recipe-source-link:hover{text-decoration:underline}.ingredient-group{margin-bottom:1rem}.ingredient-group:last-child{margin-bottom:0}.ingredient-group__title{font-family:Playfair Display,serif;font-size:1.125rem;font-weight:600;margin:0 0 .75rem;color:#111827;text-transform:capitalize}.ingredients-list,.instructions-list{list-style:none;margin-bottom:0;padding:0}.ingredient-item{padding:8px 12px;margin-bottom:4px;background:#fafafa;border-radius:6px;border-left:3px solid #6b78a8;font-size:13px;display:flex;align-items:center;gap:8px;transition:all .2s}.ingredient-item:hover{background:#f0f0f0;transform:translate(4px)}.ingredient-checkbox{width:16px;height:16px;border:2px solid #ccc;border-radius:4px;cursor:pointer;flex-shrink:0}.ingredient-text{flex:1;font-size:13px;line-height:1.5;color:#1a1a1a;transition:all .2s}.ingredient-text--checked{text-decoration:line-through;color:#999}.instruction-item{margin-bottom:8px;background:#fafafa;border-radius:8px;border-left:3px solid #6b78a8;position:relative;padding:12px 14px 12px 48px}.step-number{position:absolute;left:10px;top:12px;font-family:Playfair Display,serif;font-size:20px;font-weight:700;color:#6b78a8;background:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a}.step-text{font-size:13px;line-height:1.5;color:#1a1a1a}.calculation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.btn-toggle-math{background:#6b78a8;color:#fff;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-toggle-math:hover{background:#5a6690}.btn-toggle-math:focus{outline:2px solid #6b78a8;outline-offset:2px}.calculation-summary{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;font-size:.875rem}.calculation-step{margin-bottom:.5rem;color:#111827}.calculation-step:last-child{margin-bottom:0;font-weight:600}.gl-data-warning{margin-top:1rem;padding:.75rem;border-radius:4px;font-size:.875rem;line-height:1.5}.gl-data-warning.fallback{background:#fef3c7;border:1px solid #f59e0b;color:#92400e}.gl-data-warning.estimated{background:#dbeafe;border:1px solid #3b82f6;color:#1e40af}.gl-data-warning strong{font-weight:700}@media(max-width:768px){.recipe-details{gap:1.5rem}.recipe-section{padding-bottom:1.5rem}.recipe-section__title,.section-title{font-size:18px}.recipe-meta-block{padding:.75rem}.instruction-item{padding-left:44px}.step-number{width:28px;height:28px;font-size:16px}}@media(max-width:480px){.recipe-section__title,.section-title{font-size:16px}.ingredient-item{padding:6px 10px;font-size:12px}.ingredient-checkbox{width:14px;height:14px}.step-text{font-size:12px}}.recipe-sidebar{display:flex;flex-direction:column;gap:1rem;position:sticky;top:100px;align-self:flex-start}.sidebar-card{background:#fff;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, 8px);padding:1.5rem;box-shadow:0 1px 3px #0000001a}.sidebar-card__title{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.25rem;font-weight:700;margin:0 0 1rem;color:var(--color-text, #111827)}.gl-display{text-align:center;padding:12px;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #10b981;border-radius:8px;margin-bottom:12px}.gl-display--medium{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#f59e0b}.gl-display--high{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#ef4444}.gl-value-large{font-family:Playfair Display,serif;font-size:36px;font-weight:800;line-height:1;margin-bottom:3px;color:#10b981}.gl-display--medium .gl-value-large{color:#f59e0b}.gl-display--high .gl-value-large{color:#ef4444}.gl-rating{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#666;margin-bottom:6px}.gl-description{font-size:11px;color:#666;margin:6px 0 0;line-height:1.3}.quick-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:12px}.stat-box{text-align:center;padding:6px 8px;background:#fafafa;border-radius:6px}.stat-value{display:block;font-size:18px;font-weight:700;color:#333;margin-bottom:2px}.stat-label{display:block;font-size:11px;color:#999}.action-buttons{display:flex;flex-direction:column;gap:8px}.action-buttons .btn{width:100%;justify-content:center;padding:10px 16px;font-size:14px;font-weight:600}.sidebar-card--nutrition{padding:16px}.sidebar-card--nutrition .card{border:none;box-shadow:none;margin:0}.sidebar-title{font-family:Playfair Display,serif;font-size:16px;font-weight:700;margin-bottom:12px;color:#1a1a1a}.nutrition-grid{display:grid;grid-template-columns:1fr;gap:4px}.nutrition-row{display:flex;justify-content:space-between;align-items:center;padding:5px 10px;background:#fafafa;border-radius:4px}.nutrition-label{font-size:12px;font-weight:600;color:#666}.nutrition-value{font-size:14px;font-weight:700;color:#1a1a1a}.sidebar-card--recommendations{padding:16px}.sidebar-card--recommendations .card{border:none;box-shadow:none;margin:0}@media(max-width:1024px){.recipe-sidebar{position:static;top:auto}}@media(max-width:768px){.recipe-sidebar{gap:1rem}.sidebar-card{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat{padding:.75rem}.stat__value{font-size:1.25rem}.gl-scale{gap:.375rem}.gl-scale-item{padding:.375rem;font-size:.6875rem}}@media(max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.gl-title{font-size:1.25rem}.gl-rating{font-size:1rem}}@media print{.recipe-sidebar{position:static;page-break-inside:avoid}.sidebar-card--actions{display:none}}.recipe-container{max-width:var(--max-width, 1200px);margin:0 auto;padding:2rem 1rem}.recipe-layout{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:flex-start}@media(max-width:1024px){.recipe-layout{grid-template-columns:1fr;gap:2rem}.recipe-sidebar{order:2}.recipe-details{order:1}}@media(max-width:768px){.recipe-container{padding:1.5rem 1rem}.recipe-layout{gap:1.5rem}}@media(max-width:480px){.recipe-container{padding:1rem .75rem}.recipe-layout{gap:1rem}}@media print{.recipe-container{max-width:100%;padding:0}.recipe-layout{grid-template-columns:1fr;gap:1rem}.recipe-section,.instruction-item{page-break-inside:avoid}}.tags-section{background:#fff;border-radius:12px;padding:20px;margin-top:16px;box-shadow:0 2px 12px #0000000f}.tags-title{font-size:16px;font-weight:700;margin-bottom:16px;color:#1a1a1a}.tags-container{display:flex;flex-wrap:wrap;gap:10px}.tag-primary,.tag-secondary{display:inline-block;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;cursor:pointer}.tag-primary{background:#f0f0f0;border:1px solid #6b78a8;color:#6b78a8;font-weight:700}.tag-primary:hover{background:#6b78a8;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #6b78a833}.tag-secondary{background:transparent;border:1px solid #d0d0d0;color:#999;font-size:12px}.tag-secondary:hover{border-color:#999;color:#666}@media(max-width:768px){.tags-section{padding:16px;margin-top:16px}.tag-primary,.tag-secondary{padding:6px 12px;font-size:12px}}.related-section{margin:24px 0 32px;padding:0 24px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:900px;margin:0 auto}@media(max-width:1024px){.related-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.related-section{padding:0 16px}.related-grid{grid-template-columns:1fr;gap:16px}}.blog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.blog-card{background:#fff;border-radius:8px;overflow:hidden;transition:transform .3s;box-shadow:0 2px 8px #0000000f;cursor:pointer}.blog-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.blog-image{width:100%;height:120px;background:#e0e0e0;overflow:hidden}.blog-image img{width:100%;height:100%;object-fit:cover}.blog-content{padding:16px}.blog-category{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#6b78a8;font-weight:600;margin-bottom:4px}.blog-title{font-family:Playfair Display,serif;font-size:15px;font-weight:600;margin-bottom:6px;color:#1a1a1a;line-height:1.3}.blog-excerpt{font-size:12px;color:#666;line-height:1.5;margin-bottom:8px}.blog-meta{font-size:11px;color:#999}@media(max-width:1024px){.blog-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media(max-width:768px){.blog-grid{grid-template-columns:1fr;gap:12px}.blog-image{height:100px}.blog-content{padding:12px}.blog-title{font-size:14px}.blog-excerpt{font-size:11px}}.admin-recipe-item{cursor:pointer;transition:box-shadow .2s;overflow:hidden;padding:1rem;background:var(--color-bg-card, #ffffff);border-radius:var(--radius, .5rem);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));margin-bottom:1rem}.admin-recipe-item__header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.25rem}.admin-recipe-item__title{margin:0;word-break:break-word;flex:1;min-width:200px}.admin-recipe-item__description{color:var(--color-text-light, #6b7280);font-size:.875rem;margin-bottom:.5rem;word-break:break-word}.admin-recipe-item__meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.875rem;margin-bottom:.75rem}.admin-recipe-item__gl{font-weight:500}.admin-recipe-item__gl[data-rating=low]{color:var(--color-success, #10b981)}.admin-recipe-item__gl[data-rating=medium]{color:var(--color-warning, #f59e0b)}.admin-recipe-item__gl[data-rating=high]{color:var(--color-error, #ef4444)}.admin-recipe-item__actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-recipe-item__notes{margin-top:.75rem;padding:.5rem;background:#fef3c7;border-radius:var(--radius, .5rem);font-size:.875rem;word-break:break-word}@media(max-width:640px){.admin-recipe-item__header{flex-direction:column;align-items:flex-start}.admin-recipe-item__actions{width:100%}.admin-recipe-item__actions button,.admin-recipe-item__actions a{flex:1;min-width:0}}.filter-bar__stats{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:var(--color-bg-card, #ffffff);border-radius:var(--radius, .5rem);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));margin-bottom:1rem}.filter-bar{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:var(--color-bg-card, #ffffff);border-radius:var(--radius, .5rem);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));margin-bottom:1rem}.filter-bar__row{display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto}.filter-bar__select{padding:.5rem;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, .5rem);background:var(--color-bg, #ffffff);color:var(--color-text, #1f2937);font-size:.875rem;cursor:pointer;transition:border-color .2s;white-space:nowrap;min-width:120px}.filter-bar__select:hover{border-color:var(--color-primary, #3b82f6)}.filter-bar__select:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.filter-bar__search{width:100%;padding:.5rem;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius, .5rem);background:var(--color-bg, #ffffff);color:var(--color-text, #1f2937);font-size:.875rem;transition:border-color .2s}.filter-bar__search:hover{border-color:var(--color-primary, #3b82f6)}.filter-bar__search:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.filter-bar__search::placeholder{color:var(--color-text-light, #9ca3af)}.filter-bar .search-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:0 8px;line-height:1;transition:color .2s}.filter-bar .search-clear-btn:hover{color:#666}@media(max-width:768px){.filter-bar__row{flex-wrap:wrap}.filter-bar__select{flex:1;min-width:100px}.filter-bar__stats{font-size:.875rem}}.filter-bar__row::-webkit-scrollbar{height:6px}.filter-bar__row::-webkit-scrollbar-track{background:var(--color-bg-light, #f3f4f6);border-radius:3px}.filter-bar__row::-webkit-scrollbar-thumb{background:var(--color-border, #e5e7eb);border-radius:3px}.filter-bar__row::-webkit-scrollbar-thumb:hover{background:var(--color-text-light, #9ca3af)}.filter-bar.browse{background:#fff;border-bottom:1px solid #e5e5e5}.filter-bar.browse .filter-container{display:flex;justify-content:flex-start;align-items:center;width:100%;max-width:1200px;margin:0 auto;padding:16px 24px 8px;gap:16px}.filter-bar.browse .filter-group{display:flex;gap:12px;align-items:center}.filter-bar.browse .filter-label{font-size:14px;font-weight:600;color:#666;white-space:nowrap}.filter-bar.browse .filter-select{padding:8px 32px 8px 12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;font-size:14px;color:#1a1a1a;cursor:pointer;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.filter-bar.browse .filter-select:hover{border-color:#6b78a8}.filter-bar.browse .filter-select:focus{outline:none;border-color:#6b78a8;box-shadow:0 0 0 3px #6b78a81a}.filter-bar.browse .search-group{position:relative;flex:1;min-width:300px}.filter-bar.browse .filter-search{width:100%;padding:8px 36px 8px 12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;font-size:14px;color:#1a1a1a;transition:border-color .2s;font-family:Inter,system-ui,-apple-system,sans-serif}.filter-bar.browse .filter-search:hover{border-color:#6b78a8}.filter-bar.browse .filter-search:focus{outline:none;border-color:#6b78a8;box-shadow:0 0 0 3px #6b78a81a}.filter-bar.browse .filter-search::placeholder{color:#999}.filter-bar.browse .search-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:0 8px;line-height:1;transition:color .2s}.filter-bar.browse .search-clear-btn:hover{color:#666}.filter-bar.browse .results-count{font-size:14px;color:#999;margin-left:auto;white-space:nowrap}@media(max-width:768px){.filter-bar.browse{padding:12px 16px}.filter-bar.browse .filter-container{flex-wrap:wrap;gap:12px}.filter-bar.browse .filter-group{width:100%}.filter-bar.browse .search-group{width:100%;max-width:none;min-width:unset}.filter-bar.browse .filter-select{flex:1}.filter-bar.browse .results-count{font-size:13px;width:100%;margin-left:0;text-align:right}}.recipe-card{background:#fff;border-radius:16px;overflow:hidden;transition:all .3s;box-shadow:0 2px 8px #0000000f;border:2px solid transparent;display:flex;flex-direction:column;height:280px;position:relative}.recipe-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #0000001f}.recipe-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;cursor:pointer}.recipe-card-link:focus{outline:2px solid #6b78a8;outline-offset:2px;border-radius:16px}.recipe-image{position:relative;width:100%;height:150px;background-size:cover;background-position:center;overflow:hidden}.recipe-image img{width:100%;height:100%;object-fit:cover;display:block}.gl-badge{position:absolute;top:8px;right:8px;background:#fff;padding:6px 10px;border-radius:16px;font-weight:700;font-size:12px;box-shadow:0 2px 8px #00000026}.gl-badge.gl-low{color:#10b981}.gl-badge.gl-medium{color:#f59e0b}.gl-badge.gl-high{color:#dc2626}.recipe-card__save-button{position:absolute;top:46px;right:8px;z-index:10}.recipe-card__save-button .save-button{background:#fff;border:none;border-radius:50%;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;transition:all .2s ease}.recipe-card__save-button .save-button:hover:not(:disabled){background-color:#6b78a8;transform:scale(1.1);box-shadow:0 4px 12px #0003}.recipe-card__save-button .save-button svg{width:20px;height:20px;color:#6b78a8;transition:all .2s ease}.recipe-card__save-button .save-button:hover:not(:disabled) svg{color:#fff}.recipe-card__save-button .save-button--saved svg{color:#6b78a8;fill:#6b78a8}.recipe-content{padding:16px;flex:1;display:flex;flex-direction:column}.recipe-category{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b78a8;margin:0 0 4px;display:block}.recipe-title{font-family:Playfair Display,serif!important;font-size:16px!important;font-weight:600!important;color:#1a1a1a!important;line-height:1.3!important;margin:0 0 8px!important;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.recipe-rating{margin:0 0 8px;display:flex;align-items:center}.recipe-stats{display:flex;gap:0;font-size:11px;color:#999;flex-wrap:wrap;padding-top:8px;border-top:1px solid #f0f0f0}.recipe-stats span{white-space:nowrap}.recipe-stats span:not(:last-child):after{content:" • ";margin:0 8px;color:#ccc}.recipe-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.recipe-card__tag{display:inline-block;font-size:10px;padding:4px 8px;background:#f0f0f0;color:#666;border-radius:4px;text-decoration:none;transition:all .2s ease}.recipe-card__tag--clickable{background:#e8eef8;color:#2c5aa0;cursor:pointer}.recipe-card__tag--clickable:hover{background:#2c5aa0;color:#fff;transform:translateY(-1px)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media(max-width:768px){.recipe-image{height:180px}.recipe-title{font-size:18px}}.cookie-consent-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.cookie-consent-banner{background:#fff;border-radius:12px;max-width:500px;width:100%;padding:32px;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cookie-consent-content{margin-bottom:24px}.cookie-consent-title{font-family:Playfair Display,serif;font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 16px}.cookie-consent-text{font-size:14px;line-height:1.6;color:#666;margin:0 0 12px}.cookie-consent-link{margin:0}.cookie-consent-privacy-note{font-size:13px;color:#999}.cookie-consent-privacy-note strong{color:#6b78a8;font-weight:600}.cookie-consent-actions{display:flex;gap:12px;flex-wrap:wrap}.cookie-btn{flex:1;min-width:150px;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-primary{background:#6b78a8;color:#fff}.btn-primary:hover{background:#5a6690}.btn-secondary{background:#f0f0f0;color:#666}.btn-secondary:hover{background:#e5e5e5}@media(max-width:768px){.cookie-consent-banner{padding:24px}.cookie-consent-title{font-size:20px}.cookie-consent-actions{flex-direction:column}.cookie-btn{width:100%}}.category-hero{position:relative;background:linear-gradient(135deg,#6b78a8,#8c97c8);min-height:160px;display:flex;align-items:center;justify-content:center}.category-hero-overlay{width:100%;padding:32px 24px}.category-hero-content{max-width:1200px;margin:0 auto;text-align:left;color:#fff}.category-title{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:#fff;margin:0 0 12px;line-height:1.3}.category-description{font-size:15px;color:#fff;opacity:.95;margin:0 0 12px;line-height:1.5;max-width:600px}.category-stats{font-size:13px;color:#fff;opacity:.9;font-weight:600;margin-top:8px}@media(max-width:768px){.category-hero{min-height:140px}.category-hero-overlay{padding:24px 16px}.category-title{font-size:24px;margin-bottom:8px}.category-description{font-size:14px;margin-bottom:8px}.category-stats{font-size:12px}}.sidebar-filters{display:flex;flex-direction:column;gap:6px;position:sticky;top:150px;align-self:flex-start}.filter-section{background:#fff;border-radius:6px;padding:8px;box-shadow:0 2px 8px #0000000f}.filter-section-title{font-family:Playfair Display,serif;font-size:13px;font-weight:700;color:#1a1a1a;margin:0 0 6px;text-transform:uppercase;letter-spacing:.02em}.filter-option{display:flex;align-items:flex-start;gap:8px;padding:3px 0;cursor:pointer;transition:opacity .2s;min-height:22px}.filter-option:hover{opacity:.7}.filter-option label{font-size:13px;color:#1a1a1a;cursor:pointer;flex:1;line-height:1.4;padding-top:1px}.checkbox{width:14px;height:14px;border:1.5px solid #d0d0d0;border-radius:2px;background:#fff;transition:all .2s;flex-shrink:0;position:relative;margin-top:2px}.checkbox.checked{background:#6b78a8;border-color:#6b78a8}.checkbox.checked:after{content:"";position:absolute;top:0;left:3px;width:2.5px;height:5px;border:solid white;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.range-slider{width:100%;height:3px;border-radius:2px;background:#e5e5e5;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:3px 0 2px}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#6b78a8;cursor:pointer;box-shadow:0 1px 3px #0003}.range-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#6b78a8;cursor:pointer;border:none;box-shadow:0 1px 3px #0003}.range-values{display:flex;justify-content:space-between;font-size:10px;color:#999;margin-top:2px}.prep-time-select{width:100%;padding:8px 32px 8px 10px;font-size:13px;font-family:Inter,sans-serif;color:#1a1a1a;background:#fff;border:1.5px solid #d0d0d0;border-radius:4px;cursor:pointer;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%236b78a8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.prep-time-select:hover{border-color:#6b78a8}.prep-time-select:focus{outline:none;border-color:#6b78a8;box-shadow:0 0 0 3px #6b78a81a}.ad-space{background:#f5f5f5;border:1px solid #e5e5e5;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 12px;color:#999;font-size:9px;text-align:center}.filter-clear-section{margin-top:1rem}.filter-clear-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;position:relative}.filter-clear-icon{font-size:14px;font-weight:600}.filter-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#6b78a8;color:#fff;border-radius:10px;font-size:11px;font-weight:600;line-height:1}@media(max-width:1024px){.sidebar-filters{position:static;grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.filter-section:first-child{display:none}}@media(max-width:768px){.sidebar-filters{grid-template-columns:1fr}.filter-section{padding:16px}.filter-section-title{font-size:14px;margin-bottom:12px}}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;padding:32px 24px;margin:0 auto;max-width:1200px}.page-btn{padding:10px 16px;border:1px solid #e0e0e0;background:#fff;color:#666;font-size:14px;font-weight:600;cursor:pointer;border-radius:6px;transition:all .2s;min-width:44px}.page-btn:hover:not(:disabled):not(.active){background:#f5f5f5;border-color:#6b78a8;color:#6b78a8}.page-btn.active{background:#6b78a8;color:#fff;border-color:#6b78a8;cursor:default}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-btn:focus{outline:2px solid #6b78a8;outline-offset:2px}@media(max-width:768px){.pagination{padding:24px 16px;gap:6px}.page-btn{padding:8px 12px;font-size:13px;min-width:40px}}.main-content.browse{display:grid;grid-template-columns:300px 1fr;gap:32px;max-width:1200px;margin:0 auto;padding:8px 24px 32px}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.footer-ad-space{padding:40px 24px;text-align:center;background:#f9f9f9;border-top:1px solid #e5e5e5}.footer-ad-space .ad-space{background:#fff;border:1px solid #e5e5e5;width:728px;height:90px;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:0 auto;font-size:12px;color:#999;border-radius:8px}.related-tags{margin:8px 0;padding:.5rem 1rem;background:#f8f9fa;border-radius:8px;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.related-tags h3{font-family:Playfair Display,serif;font-size:13px;font-weight:700;color:#1a1a1a;margin:0;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}.tag-chips{display:flex;flex-wrap:wrap;gap:.5rem;flex:1}.tag-chip{display:inline-block;padding:.5rem 1rem;background:#fff;border:1px solid #dee2e6;border-radius:20px;color:#495057;text-decoration:none;font-size:.9rem;transition:all .2s}.tag-chip:hover{background:#2c5aa0;color:#fff;border-color:#2c5aa0}.category-faq{margin:3rem 0;padding:2rem;background:#fff;border-radius:8px;border:1px solid #e9ecef}.category-faq h2{font-size:1.75rem;margin-bottom:1.5rem;color:#333}.faq-list{display:flex;flex-direction:column;gap:1rem}.faq-item{border-bottom:1px solid #e9ecef;padding-bottom:1rem}.faq-item:last-child{border-bottom:none}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border:none;border-radius:4px;font-size:1.1rem;font-weight:600;color:#333;cursor:pointer;text-align:left;transition:background .2s}.faq-question:hover{background:#e9ecef}.faq-icon{font-size:1.5rem;font-weight:700;color:#2c5aa0;flex-shrink:0;margin-left:1rem}.faq-answer{padding:1rem;color:#555;line-height:1.6}@media(max-width:1024px){.main-content.browse{grid-template-columns:1fr;gap:24px;padding:24px 16px}.recipe-grid{grid-template-columns:repeat(2,1fr);gap:20px}.footer-ad-space .ad-space{max-width:100%;width:auto;height:100px}}@media(max-width:640px){.main-content.browse{padding:16px}.recipe-grid{grid-template-columns:1fr;gap:16px}.footer-ad-space{padding:24px 16px}.footer-ad-space .ad-space{height:80px}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-filter-select{height:36px;width:120px}.skeleton-filter-search{height:36px;width:100%}.skeleton-results-count{height:20px;width:140px}.skeleton-filter-title{height:16px;width:80%;margin-bottom:8px}.skeleton-filter-option{height:22px;width:100%;margin-bottom:6px}.skeleton-filter-dropdown{height:36px;width:100%}.filter-bar--loading,.sidebar-filters--loading{pointer-events:none;-webkit-user-select:none;user-select:none}.filter-bar--loading .filter-select,.filter-bar--loading .filter-search,.filter-bar--loading .search-clear-btn,.sidebar-filters--loading .checkbox,.sidebar-filters--loading .prep-time-select,.sidebar-filters--loading .filter-option{opacity:.5;cursor:not-allowed}.filter-bar--loading .results-count{opacity:.5}.sidebar-filters--loading .filter-section{opacity:.7}.static-page{max-width:900px;margin:0 auto;padding:var(--space-12) var(--space-6);background:var(--color-bg-primary);line-height:var(--leading-relaxed)}@media(max-width:768px){.static-page{padding:var(--space-8) var(--space-4)}}.static-page h1{font-family:var(--font-display);font-size:var(--text-5xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:var(--leading-tight);letter-spacing:-.02em}.static-page .last-updated,.static-page .faq-intro{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-light);margin:0 0 var(--space-10) 0;font-style:italic}.static-page h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:var(--space-12) 0 var(--space-6) 0;padding-bottom:var(--space-3);border-bottom:2px solid var(--color-primary);line-height:var(--leading-tight)}.static-page section:first-of-type h2{margin-top:var(--space-8)}.static-page h3{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-medium);color:var(--color-text-primary);margin:var(--space-8) 0 var(--space-4) 0;line-height:var(--leading-tight)}.static-page h4{font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:var(--space-6) 0 var(--space-3) 0;line-height:var(--leading-snug)}.static-page p{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-secondary);margin:0 0 var(--space-5) 0;line-height:var(--leading-relaxed)}.static-page ul,.static-page ol{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-secondary);margin:0 0 var(--space-5) 0;padding-left:var(--space-6);line-height:var(--leading-relaxed)}.static-page li{margin-bottom:var(--space-3)}.static-page li strong{color:var(--color-text-primary);font-weight:var(--weight-semibold)}.static-page ul ul,.static-page ol ol{margin-top:var(--space-3);margin-bottom:var(--space-3)}.static-page a{color:var(--color-primary);text-decoration:none;font-weight:var(--weight-medium);transition:all .2s ease;border-bottom:1px solid transparent}.static-page a:hover{color:var(--color-primary-dark);border-bottom-color:var(--color-primary-dark)}.static-page a.btn-primary,.static-page a.btn-secondary,.static-page a.btn-ghost{border-bottom:none;text-decoration:none}.static-page a.btn-primary{color:#fff!important}.static-page a.btn-primary:hover{color:#fff!important;border-bottom:none}.static-page a.btn-secondary:hover,.static-page a.btn-ghost:hover{border-bottom:none}.static-page .link-button{display:inline-block;color:var(--color-primary);font-weight:var(--weight-semibold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:all .2s ease}.static-page .link-button:hover{background:var(--color-primary-ghost);color:var(--color-primary-dark);border-bottom:none}.static-page table,.cookie-table{width:100%;border-collapse:collapse;margin:var(--space-6) 0;font-family:var(--font-body);font-size:var(--text-sm);background:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);overflow:hidden}.static-page thead{background:var(--color-bg-tertiary)}.static-page th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--weight-semibold);color:var(--color-text-primary);border-bottom:2px solid var(--color-border-dark)}.static-page td{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light)}.static-page tbody tr:last-child td{border-bottom:none}.static-page tbody tr:hover{background:var(--color-bg-secondary)}.static-page td code{font-family:var(--font-mono);font-size:var(--text-sm);background:var(--color-bg-tertiary);color:var(--color-primary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-light)}@media(max-width:768px){.static-page table{display:block;overflow-x:auto;white-space:nowrap}}.static-page .info-box,.static-page .warning-box,.static-page .formula-box{margin:var(--space-6) 0;padding:var(--space-5) var(--space-6);border-radius:var(--radius-md);border-left:4px solid}.static-page .info-box{background:var(--color-primary-ghost);border-left-color:var(--color-primary)}.static-page .info-box h4{color:var(--color-primary);margin-top:0}.static-page .warning-box{background:var(--color-gl-high-bg);border-left-color:var(--color-error)}.static-page .warning-box h4{color:var(--color-error);margin-top:0}.static-page .warning-box p:last-child{margin-bottom:0}.static-page .formula-box{background:#f8f9fb;border-left-color:var(--color-primary-light);font-family:var(--font-body)}.static-page .formula-box strong{display:block;color:var(--color-text-primary);font-weight:var(--weight-semibold);margin-bottom:var(--space-2)}.static-page .formula-box code{display:block;font-family:var(--font-mono);font-size:var(--text-base);background:var(--color-bg-primary);color:var(--color-primary);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin:var(--space-3) 0;border:1px solid var(--color-border-light)}.static-page .formula-box p:last-child{margin-bottom:0;font-size:var(--text-sm)}.static-page .gl-low{color:var(--color-gl-low);font-weight:var(--weight-semibold)}.static-page .gl-medium{color:var(--color-gl-medium);font-weight:var(--weight-semibold)}.static-page .gl-high{color:var(--color-gl-high);font-weight:var(--weight-semibold)}.static-page section{margin-bottom:var(--space-12);scroll-margin-top:120px}.static-page section:last-child{margin-bottom:0}.static-page .page-footer{margin-top:var(--space-16);padding-top:var(--space-6);border-top:1px solid var(--color-border-light)}.faq-category{margin-bottom:var(--space-12);scroll-margin-top:120px}.faq-list{margin-top:var(--space-6)}.faq-item{border:1px solid var(--color-border-light);border-radius:var(--radius-md);margin-bottom:var(--space-4);overflow:hidden;transition:all .2s ease}.faq-item:hover{border-color:var(--color-border-medium);box-shadow:var(--shadow-sm)}.faq-item.open{border-color:var(--color-primary-light);box-shadow:var(--shadow-md)}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--color-bg-primary);border:none;font-family:var(--font-body);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text-primary);text-align:left;cursor:pointer;transition:all .2s ease}.faq-question:hover{background:var(--color-bg-secondary)}.faq-item.open .faq-question{background:var(--color-primary-ghost);color:var(--color-primary-dark)}.faq-toggle{font-size:var(--text-2xl);font-weight:var(--weight-light);color:var(--color-primary);flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);transition:all .2s ease}.faq-item.open .faq-toggle{background:var(--color-primary);color:#fff;transform:rotate(180deg)}.faq-answer{padding:0 var(--space-5) var(--space-5) var(--space-5);background:var(--color-bg-secondary);border-top:1px solid var(--color-border-light);animation:fadeIn .3s ease}.faq-answer p{margin-bottom:var(--space-4);white-space:pre-line}.faq-answer p:last-child{margin-bottom:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.faq-contact{margin-top:var(--space-16);margin-bottom:var(--space-8);padding:var(--space-8);background:var(--color-primary-ghost);border-radius:var(--radius-lg);text-align:center}.faq-contact h2{border:none;margin:0 0 var(--space-3) 0;padding:0}.faq-contact p{margin-bottom:var(--space-5)}.faq-contact .btn-primary{margin-top:var(--space-2)}.contact-form-section{margin-top:var(--space-10)}.contact-form{max-width:600px;margin:0 auto}.form-group{margin-bottom:var(--space-6)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ghost)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-light)}.form-group textarea{resize:vertical;min-height:120px}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;padding-right:var(--space-10)}.form-actions{margin-top:var(--space-8)}.form-status{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin-bottom:var(--space-6);font-family:var(--font-body);font-size:var(--text-md);font-weight:var(--weight-medium);border:1px solid}.form-status.success{background:var(--color-gl-low-bg);border-color:var(--color-gl-low-border);color:var(--color-gl-low)}.form-status.error{background:var(--color-gl-high-bg);border-color:var(--color-gl-high-border);color:var(--color-gl-high)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--color-bg-tertiary)}@media(max-width:768px){.static-page h1{font-size:var(--text-4xl)}.static-page h2{font-size:var(--text-2xl);margin-top:var(--space-10)}.static-page h3{font-size:var(--text-xl)}.faq-question{padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}.faq-answer{padding:0 var(--space-4) var(--space-4) var(--space-4)}.faq-contact{padding:var(--space-6)}}.contact-page{min-height:100vh;background:linear-gradient(135deg,#fafafa,#fff,#f8f9fb);position:relative;overflow:hidden}.contact-page:before{content:"";position:absolute;top:0;right:0;width:600px;height:600px;background:radial-gradient(circle,rgba(107,120,168,.03) 0%,transparent 70%);pointer-events:none;z-index:0}.contact-hero{padding:var(--space-16) 0 var(--space-12) 0;text-align:center;position:relative;z-index:1}.contact-hero__title{font-family:var(--font-display);font-size:var(--text-6xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-4) 0;line-height:var(--leading-tight);animation:fadeInUp .6s ease-out}.contact-hero__subtitle{font-family:var(--font-body);font-size:var(--text-xl);color:var(--color-text-secondary);max-width:600px;margin:0 auto;line-height:var(--leading-relaxed);animation:fadeInUp .6s ease-out .1s backwards}.contact-info-cards{padding:0 0 var(--space-12) 0;position:relative;z-index:1}.info-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:900px;margin:0 auto}.info-card{background:#fff;padding:var(--space-6);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);transition:all .3s ease;animation:fadeInUp .6s ease-out backwards}.info-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.info-card__icon{font-size:2.5rem;margin-bottom:var(--space-3);filter:grayscale(.2)}.info-card__title{font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.info-card__text{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.contact-main{padding:0 0 var(--space-20) 0;position:relative;z-index:1}.contact-layout{display:grid;grid-template-columns:380px 1fr;gap:var(--space-12);max-width:1200px;margin:0 auto}.contact-sidebar{animation:fadeInLeft .6s ease-out .2s backwards}.contact-sidebar__content{position:sticky;top:120px}.contact-sidebar h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-6) 0}.contact-reasons{list-style:none;padding:0;margin:0 0 var(--space-10) 0}.contact-reasons li{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) 0;font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light)}.contact-reasons li:last-child{border-bottom:none}.reason-icon{font-size:1.5rem;flex-shrink:0}.contact-note{padding:var(--space-6);background:var(--color-primary-ghost);border-radius:var(--radius-lg);border-left:4px solid var(--color-primary);margin-bottom:var(--space-6)}.contact-note__emphasis{font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-3) 0}.underline-handwritten{position:relative;white-space:nowrap}.underline-handwritten:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:8px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 10'%3E%3Cpath d='M0,7 Q25,3 50,6 T100,5' stroke='%236b78a8' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x;background-size:auto 100%;opacity:.5}.contact-note__text{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:var(--leading-relaxed)}.contact-tip{padding:var(--space-4);background:#fffbeb;border-radius:var(--radius-md);border-left:3px solid var(--color-warning);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.contact-tip strong{color:var(--color-text-primary)}.contact-form-wrapper{animation:fadeInRight .6s ease-out .3s backwards}.contact-form-card{background:#fff;padding:var(--space-10);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-light)}.form-group{margin-bottom:var(--space-6);animation:fadeInUp .5s ease-out backwards}.form-group label{display:block;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.label-with-counter{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.char-counter{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-light);font-weight:var(--weight-normal);text-transform:none;letter-spacing:normal}.char-counter--warning{color:var(--color-warning);font-weight:var(--weight-semibold)}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:var(--space-4);font-size:1.25rem;pointer-events:none;z-index:1;filter:grayscale(.3)}.input-icon--textarea{top:var(--space-4);align-self:flex-start}.input-with-icon input,.input-with-icon select,.input-with-icon textarea{width:100%;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-12);font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-primary);background:var(--color-bg-primary);border:2px solid var(--color-border-medium);border-radius:var(--radius-md);transition:all .2s ease}.input-with-icon textarea{resize:vertical;min-height:150px}.input-with-icon input:focus,.input-with-icon select:focus,.input-with-icon textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-ghost);transform:translateY(-1px)}.input-with-icon input::placeholder,.input-with-icon textarea::placeholder{color:var(--color-text-light)}.input-with-icon select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;padding-right:var(--space-10)}.input-with-icon input:disabled,.input-with-icon select:disabled,.input-with-icon textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--color-bg-tertiary)}.form-status{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin-bottom:var(--space-6);font-family:var(--font-body);font-size:var(--text-md);font-weight:var(--weight-medium);border:1px solid;animation:slideInRight .4s ease-out}.form-status__icon{font-size:1.25rem;font-weight:700}.form-status--success{background:var(--color-gl-low-bg);border-color:var(--color-gl-low);color:var(--color-gl-low)}.form-status--success .form-status__icon{animation:checkmarkPop .5s ease-out}.form-status--error{background:var(--color-gl-high-bg);border-color:var(--color-gl-high);color:var(--color-gl-high)}.form-actions{margin-top:var(--space-8);animation:fadeInUp .5s ease-out backwards}.btn-submit{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-base);padding:var(--space-4) var(--space-6)}.btn-submit .btn-arrow{transition:transform .2s ease}.btn-submit:hover .btn-arrow{transform:translate(4px)}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.confetti-container:before,.confetti-container:after{content:"🎉";position:absolute;font-size:3rem;animation:confettiFall 2s ease-out}.confetti-container:before{left:20%;animation-delay:0s}.confetti-container:after{left:80%;animation-delay:.3s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes checkmarkPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes confettiFall{0%{top:-10%;transform:rotate(0);opacity:1}to{top:110%;transform:rotate(720deg);opacity:0}}@media(max-width:1024px){.contact-layout{grid-template-columns:320px 1fr;gap:var(--space-8)}.contact-sidebar__content{position:static}.info-cards-grid{gap:var(--space-4)}.info-card{padding:var(--space-5)}}@media(max-width:768px){.contact-hero{padding:var(--space-12) 0 var(--space-8) 0}.contact-hero__title{font-size:var(--text-4xl)}.contact-hero__subtitle{font-size:var(--text-lg)}.info-cards-grid{grid-template-columns:1fr;gap:var(--space-4)}.info-card{padding:var(--space-5)}.contact-layout{grid-template-columns:1fr;gap:var(--space-8)}.contact-sidebar h2{font-size:var(--text-2xl)}.contact-reasons li{font-size:var(--text-sm)}.contact-form-card{padding:var(--space-6)}.form-group{margin-bottom:var(--space-5)}.input-with-icon input,.input-with-icon select,.input-with-icon textarea{font-size:var(--text-sm)}.label-with-counter{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}.extraction-progress-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-in}.extraction-progress-modal{background:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%;box-shadow:0 4px 20px #0000004d}.extraction-progress-modal h3{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:var(--color-text-primary, #1a1a1a);text-align:center}.progress-steps{display:flex;flex-direction:column;gap:1.5rem}.progress-step{display:flex;align-items:center;gap:1rem;opacity:.3;transition:opacity .3s ease;padding:.5rem;border-radius:4px}.progress-step.active{opacity:1;background-color:#2563eb0d}.progress-step.complete{opacity:.6}.step-icon{font-size:2rem;flex-shrink:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center}.step-label{flex:1;font-size:1rem;font-weight:500;color:var(--color-text-primary, #1a1a1a)}.step-spinner{width:20px;height:20px;border:2px solid #ccc;border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:spin 1s linear infinite;margin-left:auto;flex-shrink:0}@media(max-width:480px){.extraction-progress-modal{padding:1.5rem}.extraction-progress-modal h3{font-size:1.25rem}.step-icon{font-size:1.5rem;width:2rem;height:2rem}.step-label{font-size:.9rem}}.u-mt-0{margin-top:0!important}.u-mt-2{margin-top:var(--space-2)!important}.u-mt-4{margin-top:var(--space-4)!important}.u-mt-6{margin-top:var(--space-6)!important}.u-mt-8{margin-top:var(--space-8)!important}.u-mb-0{margin-bottom:0!important}.u-mb-2{margin-bottom:var(--space-2)!important}.u-mb-4{margin-bottom:var(--space-4)!important}.u-mb-6{margin-bottom:var(--space-6)!important}.u-mb-8{margin-bottom:var(--space-8)!important}.u-ml-0{margin-left:0!important}.u-ml-2{margin-left:var(--space-2)!important}.u-ml-4{margin-left:var(--space-4)!important}.u-ml-6{margin-left:var(--space-6)!important}.u-ml-8{margin-left:var(--space-8)!important}.u-mr-0{margin-right:0!important}.u-mr-2{margin-right:var(--space-2)!important}.u-mr-4{margin-right:var(--space-4)!important}.u-mr-6{margin-right:var(--space-6)!important}.u-mr-8{margin-right:var(--space-8)!important}.u-pt-0{padding-top:0!important}.u-pt-2{padding-top:var(--space-2)!important}.u-pt-4{padding-top:var(--space-4)!important}.u-pt-6{padding-top:var(--space-6)!important}.u-pt-8{padding-top:var(--space-8)!important}.u-pb-0{padding-bottom:0!important}.u-pb-2{padding-bottom:var(--space-2)!important}.u-pb-4{padding-bottom:var(--space-4)!important}.u-pb-6{padding-bottom:var(--space-6)!important}.u-pb-8{padding-bottom:var(--space-8)!important}.u-pl-0{padding-left:0!important}.u-pl-2{padding-left:var(--space-2)!important}.u-pl-4{padding-left:var(--space-4)!important}.u-pl-6{padding-left:var(--space-6)!important}.u-pl-8{padding-left:var(--space-8)!important}.u-pr-0{padding-right:0!important}.u-pr-2{padding-right:var(--space-2)!important}.u-pr-4{padding-right:var(--space-4)!important}.u-pr-6{padding-right:var(--space-6)!important}.u-pr-8{padding-right:var(--space-8)!important}.u-hidden{display:none!important}.u-block{display:block!important}.u-inline{display:inline!important}.u-inline-block{display:inline-block!important}.u-flex{display:flex!important}.u-inline-flex{display:inline-flex!important}.u-grid{display:grid!important}.u-text-center{text-align:center!important}.u-text-left{text-align:left!important}.u-text-right{text-align:right!important}.u-text-bold{font-weight:var(--weight-bold)!important}.u-text-semibold{font-weight:var(--weight-semibold)!important}.u-text-medium{font-weight:var(--weight-medium)!important}.u-text-normal{font-weight:var(--weight-normal)!important}.u-text-uppercase{text-transform:uppercase!important}.u-text-lowercase{text-transform:lowercase!important}.u-text-capitalize{text-transform:capitalize!important}.u-text-primary{color:var(--color-text-primary)!important}.u-text-secondary{color:var(--color-text-secondary)!important}.u-text-light{color:var(--color-text-light)!important}@media(max-width:768px){.u-hidden-mobile{display:none!important}}@media(min-width:768px){.u-hidden-desktop{display:none!important}}@media(min-width:768px)and (max-width:1024px){.u-hidden-tablet{display:none!important}}.u-w-full{width:100%!important}.u-w-auto{width:auto!important}.u-pointer{cursor:pointer!important}.u-no-pointer{cursor:not-allowed!important}.u-truncate{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.u-shadow-sm{box-shadow:var(--shadow-sm)!important}.u-shadow-md{box-shadow:var(--shadow-md)!important}.u-shadow-lg{box-shadow:var(--shadow-lg)!important}.u-shadow-none{box-shadow:none!important}.u-rounded-sm{border-radius:var(--radius-sm)!important}.u-rounded-md{border-radius:var(--radius-md)!important}.u-rounded-lg{border-radius:var(--radius-lg)!important}.u-rounded-full{border-radius:var(--radius-full)!important}[data-loading=true]{position:relative;pointer-events:none;opacity:.6;cursor:wait}[data-loading=true]:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}[data-disabled=true],[disabled]{opacity:.5;pointer-events:none;cursor:not-allowed}[data-active=true]{background:var(--color-primary-ghost);color:var(--color-primary);font-weight:var(--weight-semibold)}[data-error=true]{border-color:var(--color-error)}[data-error=true]:focus{outline-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}[data-success=true]{border-color:var(--color-success)}[data-success=true]:focus{outline-color:var(--color-success);box-shadow:0 0 0 3px #10b9811a}[data-expanded=true] .icon,[data-expanded=true] .chevron{transform:rotate(180deg)}[data-selected=true]{background:var(--color-primary);color:#fff}[data-hoverable=true]{transition:all .2s ease}[data-hoverable=true]:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .3s ease-in-out}.animate-slideDown{animation:slideDown .3s ease-out}.animate-slideUp{animation:slideUp .3s ease-out}@media(prefers-reduced-motion:reduce){[data-loading=true]:after{animation:none}.animate-fadeIn,.animate-slideDown,.animate-slideUp{animation:none}[data-expanded=true] .icon,[data-expanded=true] .chevron{transition:none}}.skip-to-content{position:absolute;top:-40px;left:0;z-index:10000;padding:.75rem 1.25rem;background:#6b78a8;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem;font-weight:700;text-decoration:none;border-radius:0 0 6px;box-shadow:0 8px 24px #0000001f;transition:top .2s ease}.skip-to-content:focus{top:0;outline:3px solid #5C8A62;outline-offset:2px}main:focus{outline:none}*:focus-visible{outline:2px solid #6b78a8;outline-offset:2px;border-radius:2px}*:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #6b78a8;outline-offset:2px}button:focus-visible{box-shadow:0 0 0 3px #6b78a833}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.skip-to-content{transition:none}}.sr-only{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}@media print{@page{size:letter;margin:.35in .5in .4in}*{box-shadow:none!important;text-shadow:none!important}body{font-family:Georgia,Times New Roman,serif;font-size:8.5pt;line-height:1.2;color:#000;background:#fff!important}header:not(.recipe-hero__container),footer,.footer,nav,.breadcrumbs,.category-nav,.top-bar{display:none!important}.tags-section,.related-recipes,.recipe-carousel,button,.btn-print,.btn-email,.action-buttons,.sidebar-card:first-child,.sidebar-card--actions,.sidebar-card--recommendations,.recommendations-panel,.gl-display,.recipe-section--calculations,.calculation-breakdown,.related-section{display:none!important}.nutrition-panel .warning,.nutrition-panel .note,.limited-data-warning,.fallback-warning,[class*=warning],[class*=note]{font-size:.55rem!important;margin:.15rem 0 0!important;padding:.1rem!important;line-height:1.15!important}.recipe-hero__background{display:none!important}.recipe-hero__overlay{position:static!important;background:none!important;padding:0!important;margin:0!important}.recipe-hero-image{display:block!important;width:2.5in!important;max-width:2.5in!important;height:auto!important;margin:0 auto .25rem!important;page-break-inside:avoid!important;background:transparent!important}.recipe-hero-image img{width:100%!important;height:auto!important;max-height:2in!important;object-fit:cover!important;border:1px solid #ddd!important;border-radius:4px!important;box-shadow:none!important;display:block!important}.recipe-hero{padding:0!important;margin:0!important;border:none!important;page-break-after:avoid!important;background:#fff!important;position:relative!important}.recipe-hero__container{display:block!important;padding:0!important;margin:0 0 .3rem!important}.recipe-hero__title{font-size:1.1rem!important;font-weight:700!important;margin:0!important;padding:0 0 .1rem!important;line-height:1.1!important;color:#000!important;border-bottom:2px solid #000!important}.recipe-container{max-width:100%!important;padding:0!important;margin:0!important;page-break-inside:auto!important}.recipe-layout{display:grid!important;grid-template-columns:36% 64%!important;gap:.5rem!important;align-items:flex-start!important;page-break-inside:auto!important}.recipe-details{grid-column:1 / -1!important;display:grid!important;grid-template-columns:36% 64%!important;gap:.5rem!important;page-break-inside:auto!important}.recipe-sidebar{grid-column:2!important;grid-row:2!important;position:static!important;padding:0!important;margin:0!important}.recipe-details>.description{grid-column:1 / -1!important;font-size:.7rem!important;margin:0 0 .2rem!important;padding:0!important;font-style:italic!important;color:#555!important;line-height:1.2!important}.recipe-meta{grid-column:1 / -1!important;display:flex!important;gap:.5rem!important;font-size:.65rem!important;margin:0 0 .3rem!important;padding:.15rem 0 .25rem!important;border-bottom:1px solid #ddd!important}.recipe-meta-item{display:flex!important;align-items:center!important;gap:.25rem!important}.meta-icon{font-size:.85rem!important}.meta-label{font-weight:400!important}.meta-value{font-weight:700!important}.recipe-meta-block{display:none!important}.recipe-section--ingredients{grid-column:1!important;grid-row:2!important;border-right:1px solid #ddd!important;border-left:none!important;padding-right:.5rem!important;padding-left:0!important;page-break-inside:auto!important;margin-top:0!important}.recipe-section--ingredients *,.recipe-section--ingredients,.ingredients-list,.ingredient-group,.ingredient-group__list{border-left:none!important}.recipe-section__title{font-size:.8rem!important;font-weight:700!important;margin:0 0 .2rem!important;padding:0 0 .08rem!important;border-bottom:1px solid #333!important;text-transform:uppercase!important;letter-spacing:.02em!important;color:#000!important}.ingredient-group{margin-bottom:.3rem!important;page-break-inside:auto!important;border:none!important;border-left:none!important}.ingredient-group__title{font-size:.75rem!important;font-weight:700!important;margin:.25rem 0 .12rem!important;font-style:italic!important;color:#333!important}.ingredients-list{list-style:none!important;padding:0!important;margin:0!important;border-left:none!important;border:none!important}.ingredient-item{display:flex!important;align-items:flex-start!important;gap:.4rem!important;margin:.04rem 0!important;padding:0!important;font-size:.72rem!important;line-height:1.2!important;page-break-inside:auto!important}.ingredient-checkbox{width:9px!important;height:9px!important;border:1px solid #333!important;border-radius:50%!important;flex-shrink:0!important;margin-top:2px!important;background:#fff!important}.ingredient-text{flex:1!important}.ingredient-text{word-spacing:0!important}.ingredient-item{text-indent:0!important}.recipe-section--instructions{grid-column:2!important;grid-row:2!important;padding-left:.5rem!important;margin-top:0!important}.instructions-list{list-style:none!important;padding:0!important;margin:0!important}.instruction-item{display:flex!important;gap:.25rem!important;margin:.08rem 0!important;font-size:.72rem!important;line-height:1.25!important;page-break-inside:auto!important}.step-number{font-weight:700!important;color:#333!important;flex-shrink:0!important;width:1.2rem!important}.step-text{flex:1!important}.recipe-sidebar .sidebar-card:first-child{position:absolute!important;top:.15rem!important;right:0!important;padding:.2rem .4rem!important;border:1.5px solid #333!important;border-radius:3px!important;background:#fff!important;margin:0!important;box-shadow:none!important;width:auto!important;z-index:10!important}.gl-display{display:flex!important;align-items:center!important;gap:.3rem!important}.gl-display--low{border-color:#10b981!important}.gl-display--medium{border-color:#f59e0b!important}.gl-display--high{border-color:#ef4444!important}.gl-value-large{font-size:.95rem!important;font-weight:700!important;margin:0!important}.gl-display--low .gl-value-large{color:#10b981!important}.gl-display--medium .gl-value-large{color:#f59e0b!important}.gl-display--high .gl-value-large{color:#ef4444!important}.gl-rating{font-size:.65rem!important;text-transform:uppercase!important;font-weight:700!important;color:#333!important}.gl-description{display:none!important}.sidebar-card--nutrition{position:relative!important;grid-column:2!important;grid-row:3!important;margin:0!important;padding:0!important;background:transparent!important;border:none!important;page-break-inside:auto!important;page-break-before:auto!important}.nutrition-panel{margin-top:.3rem!important;padding:.25rem!important;background:#f9f9f9!important;border:1px solid #ddd!important;page-break-inside:auto!important;page-break-before:auto!important}.nutrition-panel h3,.nutrition-panel h2{font-size:.7rem!important;font-weight:700!important;margin:0 0 .15rem!important;text-transform:uppercase!important}.nutrition-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:.12rem!important;font-size:.62rem!important}.nutrition-item{display:flex!important;justify-content:space-between!important;padding:.04rem 0!important}.nutrition-label{font-weight:400!important}.nutrition-value{font-weight:700!important}.calculation-breakdown{display:none!important}body.print-with-math .calculation-breakdown{display:block!important;grid-column:1 / -1!important;font-size:.7rem!important;margin-top:1rem!important;padding:.5rem!important;background:#f5f5f5!important;border:1px dashed #999!important}.recommendations-panel{display:none!important}.recipe-hero,.ingredient-group,.instruction-item,.nutrition-panel{page-break-inside:avoid!important}p,li{orphans:3!important;widows:3!important}h1{font-size:1.5rem!important}h2{font-size:1rem!important}h3{font-size:.9rem!important}a{color:#000!important;text-decoration:none!important}a[href^=http]:after{content:none!important}.recipe-hero{background:#fff!important}.nutrition-panel{background:#f9f9f9!important}.sidebar-card{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.sidebar-card:not(:first-child){background:#f9f9f9!important;border:1px solid #ddd!important;padding:.5rem!important}}
