.weekly-basket-public-page{min-height:100vh;background-color:var(--background-color)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.loading-state{color:var(--text-light);font-size:var(--font-size-lg)}.empty-basket,.loading-state{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg)}.empty-basket{max-width:600px;margin:0 auto}.empty-basket svg{color:var(--text-light);margin-bottom:var(--spacing-lg)}.empty-basket h2{font-size:var(--font-size-2xl);color:var(--text-primary);margin-bottom:var(--spacing-md)}.empty-basket p{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.empty-basket .empty-subtitle{color:var(--text-light);font-style:italic;margin-bottom:var(--spacing-xl)}.basket-hero{background:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),url(/placeholder/legumes-ht.webp) 50%/cover no-repeat;color:var(--white);padding:var(--spacing-3xl) 0;position:relative;overflow:hidden}.basket-hero:before{content:none}.basket-hero-content{position:relative;text-align:center;max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.basket-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);background-color:rgba(255,255,255,.25);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-full);font-size:var(--font-size-base);font-weight:600;margin-bottom:var(--spacing-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);box-shadow:0 4px 12px rgba(0,0,0,.1);color:var(--white)}.basket-hero h1{font-size:var(--font-size-4xl);font-weight:700;color:var(--white);margin-bottom:var(--spacing-md);text-shadow:0 2px 8px rgba(0,0,0,.5)}.basket-date{display:inline-flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm);background-color:rgba(255,255,255,.15);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--white);font-weight:600}.basket-info-card{display:inline-flex;flex-direction:column;margin-top:var(--spacing-lg);background-color:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);border-radius:var(--border-radius-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden;text-align:left}.basket-info-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-sm);font-weight:500;color:var(--white)}.basket-info-item svg{flex-shrink:0;margin-top:2px;opacity:.85}.basket-info-item>div{display:flex;flex-direction:column;gap:2px}.basket-info-sub{font-size:var(--font-size-xs);opacity:.75;font-weight:400}.basket-info-divider{height:1px;background:rgba(255,255,255,.3);margin:0 var(--spacing-md)}.basket-message{padding:var(--spacing-2xl) 0}.message-card{display:flex;gap:var(--spacing-lg);background-color:rgba(107,157,90,.08);border-left:4px solid var(--primary-color);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.message-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:var(--primary-color);color:var(--white);border-radius:var(--border-radius-md)}.message-content h3{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--spacing-sm);font-weight:600}.message-content p{font-size:var(--font-size-base);color:var(--text-secondary);line-height:1.6;white-space:pre-wrap}.basket-summary{padding:var(--spacing-2xl) 0;background-color:#f5f5f5}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl)}.summary-card{display:flex;gap:var(--spacing-lg);background:white;padding:var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-normal);border:1px solid var(--border-color)}.summary-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.summary-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-md);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:var(--white)}.summary-icon.small{width:56px;height:56px}.summary-icon.large{width:64px;height:64px}.summary-content{flex:1 1}.summary-content h3{font-size:var(--font-size-xl);color:var(--text-primary);margin-bottom:var(--spacing-md);font-weight:600}.summary-stats{display:flex;align-items:baseline;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--primary-color)}.stat-label{color:var(--text-light)}.stat-label,.summary-note{font-size:var(--font-size-sm)}.summary-note{color:var(--text-secondary);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.basket-composition{padding:var(--spacing-3xl) 0;background:var(--gradient-footer)}.section-title{font-size:var(--font-size-3xl);color:var(--text-primary);text-align:center;margin-bottom:var(--spacing-2xl);font-weight:700}.producers-list{display:flex;flex-direction:column;gap:var(--spacing-2xl);padding-left:var(--spacing-lg);padding-right:var(--spacing-lg);background-color:transparent}.producer-section{background:white;border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.producer-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);background:linear-gradient(135deg,rgba(107,157,90,.1),rgba(107,157,90,.05));border-bottom:2px solid var(--primary-color)}.producer-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:var(--primary-color);color:var(--white);border-radius:var(--border-radius-md)}.producer-info h3{font-size:var(--font-size-xl);color:var(--text-primary);margin-bottom:var(--spacing-xs);font-weight:600}.producer-specialty{font-size:var(--font-size-sm);color:var(--text-light);font-style:italic}.products-list{list-style:none;margin:0;padding:var(--spacing-md) var(--spacing-xl);display:flex;flex-direction:column;gap:0}.product-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-color);font-size:var(--font-size-base);color:var(--text-primary);font-weight:500}.product-item:last-child{border-bottom:none}.product-item svg{color:var(--text-light);flex-shrink:0}.basket-cta{padding:var(--spacing-3xl) 0;background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%)}.cta-card{text-align:center;color:var(--white);max-width:800px;margin:0 auto;box-shadow:0 20px 25px -5px var(--shadow-color);background:var(--gradient-soft-banner);border:2px solid rgba(255,255,255,.4);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl)}.cta-card h2{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-lg);text-shadow:0 2px 4px rgba(0,0,0,.1)}.cta-card p{font-size:var(--font-size-lg);line-height:1.6;margin-bottom:var(--spacing-2xl);opacity:.95;color:var(--white)}.cta-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.btn,.cta-actions{justify-content:center}.btn{display:inline-flex;align-items:center;padding:var(--input-padding-y) var(--input-padding-x);font-size:var(--font-size-base);font-weight:500;border-radius:var(--border-radius-md);border:none;cursor:pointer;transition:var(--transition-normal);text-decoration:none;font-family:inherit}.btn-primary{background-color:var(--primary-color);color:var(--white)}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md);color:var(--white)}.btn-secondary{background-color:var(--white);color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background-color:var(--primary-color);color:var(--white);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}@media (max-width:1024px){.basket-layout{grid-template-columns:1fr;gap:var(--spacing-xl)}.basket-summary{position:static;order:-1;width:100%}.basket-card{padding:var(--spacing-lg)}}@media (max-width:768px){.basket-hero{padding:var(--spacing-lg) 0}.basket-hero h1{font-size:var(--font-size-2xl)}.weekly-basket-public-page{padding:var(--spacing-xl) 0}.basket-date{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.cta-actions{flex-direction:column;gap:var(--spacing-sm)}.cta-actions .btn{width:100%}}.recipe-suggestions{padding:var(--spacing-3xl) 0;background-color:var(--white)}.recipe-suggestions .section-title{text-align:center;font-size:var(--font-size-2xl);color:var(--text-primary);margin-bottom:var(--spacing-xl)}.recipe-suggestions .loading-state{padding:var(--spacing-xl)}.recipe-suggestions .no-suggestions-wrapper{text-align:center;max-width:600px;margin:0 auto}.recipe-suggestions .no-suggestions{color:var(--text-light);font-style:italic;padding:var(--spacing-lg) var(--spacing-xl) var(--spacing-md)}.recipe-suggestions .manual-search{padding:var(--spacing-xl);background-color:var(--grey-50);border-radius:var(--border-radius-lg);margin-top:var(--spacing-lg)}.recipe-suggestions .search-prompt{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--spacing-md);font-weight:var(--font-weight-medium)}.recipe-suggestions .search-mode-toggle{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);background-color:var(--white);padding:var(--spacing-xs);border-radius:var(--border-radius-md);border:1px solid var(--border-color)}.recipe-suggestions .toggle-btn{flex:1 1;padding:var(--spacing-sm) var(--spacing-md);border:none;background-color:transparent;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-fast)}.recipe-suggestions .toggle-btn:hover{background-color:var(--grey-100)}.recipe-suggestions .toggle-btn.active{background-color:var(--primary-color);color:var(--white)}.recipe-suggestions .search-hint{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-light);font-style:italic}.recipe-suggestions .search-hint svg{color:var(--primary-color);flex-shrink:0}.recipe-suggestions .search-form{display:flex;gap:var(--spacing-md);align-items:stretch}.recipe-suggestions .search-input-wrapper{flex:1 1;position:relative;display:flex;align-items:center}.recipe-suggestions .search-input-wrapper svg{position:absolute;left:var(--spacing-md);color:var(--text-light);pointer-events:none}.recipe-suggestions .search-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) calc(var(--spacing-md) * 3);border:2px solid var(--border-color);border-radius:var(--border-radius-md);font-size:var(--font-size-base);transition:all var(--transition-fast)}.recipe-suggestions .search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.recipe-suggestions .search-form .btn{white-space:nowrap}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:var(--spacing-lg);gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.recipe-card{display:block;background-color:var(--white);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);text-decoration:none;border:1px solid var(--border-color)}.recipe-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.recipe-card .recipe-image{width:100%;height:200px;overflow:hidden;background-color:var(--grey-100);position:relative}.recipe-card .recipe-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.recipe-card:hover .recipe-image img{transform:scale(1.05)}.recipe-card .recipe-content{padding:var(--spacing-lg)}.recipe-card h3{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--spacing-md);font-weight:var(--font-weight-semibold);line-height:1.4}.recipe-card .recipe-meta{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.recipe-card .meta-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary)}.recipe-card .meta-item svg{color:var(--primary-color)}.recipe-card .used-ingredients{padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.recipe-card .used-count{display:inline-block;font-size:var(--font-size-sm);color:var(--primary-color);background-color:rgba(var(--primary-rgb),.1);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-full);font-weight:var(--font-weight-medium)}.cta-center{text-align:center;margin-top:var(--spacing-xl)}.basket-cta .btn-primary{background:var(--white);color:var(--primary-color);font-weight:600;border:2px solid var(--white)}.basket-cta .btn-primary:hover{background:var(--primary-color);color:var(--white);border-color:var(--white);transform:translateY(-1px);box-shadow:var(--shadow-md)}@media (max-width:480px){.basket-hero h1{font-size:var(--font-size-xl)}.recipes-grid{grid-template-columns:1fr}.recipe-suggestions .search-form{flex-direction:column}.recipe-suggestions .search-form .btn{width:100%}}