.share-button{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;transition:all .2s;white-space:nowrap}.share-button:hover{background-color:var(--color-bg);border-color:#3b82f6}.share-button.copied{background-color:#10b981;color:#fff;border-color:#10b981}@media (max-width: 768px){.share-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.85rem}}.header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--spacing-lg) var(--spacing-md);box-shadow:0 1px 3px var(--color-shadow)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.header-text{flex:1}.header-actions{flex-shrink:0}.header-title{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xs)}.header-logo{text-decoration:none;background:linear-gradient(135deg,#10b981,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-logo:hover{opacity:.8}.header-subtitle{font-size:.9rem;color:var(--color-text-secondary)}@media (max-width: 768px){.header{padding:var(--spacing-md) var(--spacing-sm)}.header-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.header-actions{align-self:flex-start}.header-title{font-size:1.5rem}.header-subtitle{font-size:.85rem}}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);padding:var(--spacing-lg) 0;border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-sm);border:none;padding:0;margin:0}.filter-label{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.filter-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.filter-button{padding:var(--spacing-sm) var(--spacing-md);min-height:44px;min-width:44px;background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;transition:all .2s;white-space:nowrap}.filter-button:hover{background-color:var(--color-bg);border-color:#3b82f6}.filter-button.active{background-color:#3b82f6;color:#fff;border-color:#3b82f6}@media (max-width: 768px){.filter-bar{gap:var(--spacing-md);padding:var(--spacing-md) 0}.filter-button{padding:var(--spacing-sm) var(--spacing-md);min-height:44px;min-width:44px;font-size:.85rem}}.location-selector{display:flex;align-items:center;gap:.5rem}.location-label{font-size:.875rem;color:var(--color-text-secondary, #6b7280)}.location-select{padding:.5rem 2rem .5rem .75rem;min-height:44px;font-size:.875rem;border:1px solid var(--color-border, #e5e7eb);border-radius:.375rem;background-color:var(--color-background, #fff);color:var(--color-text, #111827);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' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.25rem}.location-select:hover{border-color:var(--color-border-hover, #d1d5db)}.location-select:focus{outline:none;border-color:var(--color-primary, #10b981);box-shadow:0 0 0 2px #10b98133}.produce-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .2s;box-shadow:0 1px 3px var(--color-shadow)}.produce-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.produce-emoji{font-size:3rem;margin-bottom:var(--spacing-sm);line-height:1}.produce-name{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-sm)}.produce-badge{font-size:.75rem;font-weight:600;color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.produce-card{padding:var(--spacing-sm)}.produce-emoji{font-size:2.5rem}.produce-name{font-size:.9rem}.produce-badge{font-size:.7rem}}.produce-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-md)}@media (max-width: 768px){.produce-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-sm)}}@media (max-width: 480px){.produce-grid{grid-template-columns:repeat(2,1fr)}}.ad-banner{width:100%;max-width:728px;margin:0 auto var(--spacing-md);min-height:90px;display:flex;align-items:center;justify-content:center}.ad-banner--placeholder{background-color:var(--color-border);border:2px dashed var(--color-text-secondary);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.875rem}@media (max-width: 768px){.ad-banner{max-width:320px;min-height:50px}}.footer{margin-top:auto;padding:var(--spacing-lg) var(--spacing-md);border-top:1px solid var(--color-border);background-color:var(--color-surface)}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.footer-text{font-size:.875rem;color:var(--color-text-secondary);text-align:center}.tip-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);min-height:44px;background-color:#7c3aed;color:#fff;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:.9rem;transition:transform .2s,box-shadow .2s}.tip-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #7c3aed4d}.tip-icon{font-size:1.2rem}.footer-copyright{font-size:.75rem;color:var(--color-text-secondary);opacity:.7}.footer-copyright a{color:inherit;text-decoration:none}.footer-copyright a:hover{text-decoration:underline}@media (max-width: 768px){.footer{padding:var(--spacing-md)}}.app{display:flex;flex-direction:column;min-height:100vh}.main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.filters-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) 0}.content{padding:var(--spacing-lg) 0}.section{margin-bottom:var(--spacing-xl)}.section-title{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text)}.section-description{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary)}.empty-state p{margin-bottom:var(--spacing-md);font-size:1.1rem}.reset-button{padding:var(--spacing-sm) var(--spacing-md);background-color:#3b82f6;color:#fff;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;transition:background-color .2s}.reset-button:hover{background-color:#2563eb}@media (max-width: 768px){.main{padding:0 var(--spacing-sm)}.section-title{font-size:1.25rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-text: #1f2937;--color-text-secondary: #6b7280;--color-border: #e5e7eb;--color-shadow: rgba(0, 0, 0, .05);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text);line-height:1.6}#root{min-height:100vh}button{font-family:inherit;cursor:pointer;border:none;background:none}button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-text);color:var(--color-bg);padding:var(--spacing-sm) var(--spacing-md);z-index:100;text-decoration:none;font-weight:500}.skip-link:focus{top:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
