*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color:#2d5a27;--primary-light:#4a7c59;--primary-dark:#1a3d1a;--secondary-color:#8bc34a;--accent-color:#ff6b35;--success-color:#4caf50;--warning-color:#ff9800;--error-color:#f44336;--info-color:#2196f3;--text-primary:#333;--text-secondary:#666;--text-muted:#999;--text-light:#fff;--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-light:#f5f5f5;--bg-dark:#343a40;--border-color:#e0e0e0;--border-light:#f0f0f0;--shadow-light:0 2px 4px #0000001a;--shadow-medium:0 4px 8px #00000026;--shadow-heavy:0 8px 16px #0003;--border-radius:8px;--border-radius-small:4px;--border-radius-large:12px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-xxl:3rem;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-xxl:1.5rem;--font-size-xxxl:2rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--transition-fast:0.15s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease}.container{margin:0 auto;max-width:1200px;padding:0 1rem;padding:0 var(--spacing-md)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:#2d5a27;color:var(--primary-color)}.text-secondary{color:#666;color:var(--text-secondary)}.text-muted{color:#999;color:var(--text-muted)}.text-success{color:#4caf50;color:var(--success-color)}.text-warning{color:#ff9800;color:var(--warning-color)}.text-error{color:#f44336;color:var(--error-color)}.bg-primary{background-color:#2d5a27;background-color:var(--primary-color)}.bg-secondary{background-color:#f8f9fa;background-color:var(--bg-secondary)}.bg-light{background-color:#f5f5f5;background-color:var(--bg-light)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:2rem;margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-1{margin-top:.25rem;margin-top:var(--spacing-xs)}.mt-2{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-3{margin-top:1rem;margin-top:var(--spacing-md)}.mt-4{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mt-5{margin-top:2rem;margin-top:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:.25rem;padding:var(--spacing-xs)}.p-2{padding:.5rem;padding:var(--spacing-sm)}.p-3{padding:1rem;padding:var(--spacing-md)}.p-4{padding:1.5rem;padding:var(--spacing-lg)}.p-5{padding:2rem;padding:var(--spacing-xl)}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.w-100{width:100%}.h-100{height:100%}:focus,button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #2d5a27;outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:768px){:root{--spacing-md:0.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem}.container{padding:0 .5rem;padding:0 var(--spacing-sm)}}@media print{*{background:#0000!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}body{font-size:12pt;line-height:1.4}h1,h2,h3,h4,h5,h6{page-break-after:avoid}blockquote,p{orphans:3;widows:3}blockquote,pre{page-break-inside:avoid}}.header{background-color:var(--primary-color);box-shadow:var(--shadow-medium);color:var(--text-light);position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-container{height:70px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 var(--spacing-md)}.header-container,.logo,.logo-link{align-items:center;display:flex}.logo-link{color:var(--text-light);text-decoration:none;transition:opacity var(--transition-fast)}.logo-link:hover{opacity:.9}.logo-icon{font-size:2rem;margin-right:var(--spacing-sm)}.logo-text{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);letter-spacing:-.5px}.nav{align-items:center;display:flex;gap:var(--spacing-lg)}.nav-link{border-radius:var(--border-radius-small);color:var(--text-light);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) var(--spacing-md);position:relative;text-decoration:none;transition:all var(--transition-fast)}.nav-link:hover{background-color:#ffffff1a;transform:translateY(-1px)}.nav-link.active{background-color:#ffffff26;font-weight:var(--font-weight-semibold)}.nav-link.active:after{background-color:var(--secondary-color);border-radius:1px;bottom:-2px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:20px}@media (max-width:768px){.header-container{height:60px;padding:0 var(--spacing-sm)}.logo-text{font-size:var(--font-size-xl)}.logo-icon{font-size:1.5rem}.nav{gap:var(--spacing-md)}.nav-link{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm)}}@media (max-width:480px){.header-container{flex-direction:column;gap:var(--spacing-sm);height:auto;padding:var(--spacing-sm)}.nav{gap:var(--spacing-sm);justify-content:center;width:100%}.nav-link{flex:1 1;font-size:var(--font-size-xs);text-align:center}}.logo-link:focus,.nav-link:focus{outline:2px solid var(--secondary-color);outline-offset:2px}@media (prefers-contrast:high){.header{border-bottom:2px solid var(--text-light)}.nav-link.active{background-color:var(--text-light);color:var(--primary-color)}}.plant-card{background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--border-radius);box-shadow:var(--shadow-light);display:flex;flex-direction:column;height:100%;overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all var(--transition-normal)}.plant-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-medium);transform:translateY(-4px)}.plant-card.out-of-stock{opacity:.7}.plant-card.out-of-stock:hover{transform:translateY(-2px)}.plant-card-header{align-items:flex-start;display:flex;gap:var(--spacing-sm);justify-content:space-between;margin-bottom:var(--spacing-md)}.plant-name{color:var(--text-primary);flex:1 1;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:1.3;margin:0}.stock-status{border-radius:var(--border-radius-small);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.5px;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase;white-space:nowrap}.stock-status.in-stock{background-color:#4caf501a;border:1px solid #4caf504d;color:var(--success-color)}.stock-status.out-of-stock{background-color:#f443361a;border:1px solid #f443364d;color:var(--error-color)}.plant-price{color:var(--primary-color);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-md)}.plant-categories{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:auto}.category-tag{background-color:var(--bg-light);border:1px solid var(--border-color);border-radius:var(--border-radius-small);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);transition:all var(--transition-fast)}.category-tag:hover{background-color:var(--primary-light);border-color:var(--primary-light);color:var(--text-light)}.out-of-stock-overlay{align-items:center;background-color:#ffffffe6;bottom:0;display:flex;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity var(--transition-normal)}.plant-card.out-of-stock:hover .out-of-stock-overlay{opacity:1}.out-of-stock-overlay span{background-color:var(--error-color);border-radius:var(--border-radius);box-shadow:var(--shadow-medium);color:var(--text-light);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) var(--spacing-md)}@media (max-width:768px){.plant-card{padding:var(--spacing-md)}.plant-card-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}.plant-name{font-size:var(--font-size-md)}.plant-price{font-size:var(--font-size-lg)}.stock-status{align-self:flex-end}}@media (max-width:480px){.plant-card{padding:var(--spacing-sm)}.plant-name{font-size:var(--font-size-sm)}.plant-price{font-size:var(--font-size-md)}.category-tag{font-size:.65rem;padding:2px var(--spacing-xs)}}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.plant-card{animation:cardFadeIn .3s ease-out}@media (prefers-contrast:high){.plant-card{border:2px solid var(--text-primary)}.category-tag{border:2px solid var(--text-secondary)}.stock-status.in-stock{background-color:var(--success-color);color:var(--text-light)}.stock-status.out-of-stock{background-color:var(--error-color);color:var(--text-light)}}.search-bar{flex:1 1;min-width:250px}.search-input-container{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-muted);left:var(--spacing-md);pointer-events:none;position:absolute;z-index:1}.search-icon,.search-input{font-size:var(--font-size-md)}.search-input{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);font-family:inherit;padding:var(--spacing-sm) var(--spacing-xl) var(--spacing-sm) 2.5rem;transition:all var(--transition-fast);width:100%}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2d5a271a;outline:none}.search-input:hover{border-color:var(--primary-light)}.clear-button{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--font-size-lg);height:24px;justify-content:center;padding:var(--spacing-xs);position:absolute;right:var(--spacing-sm);transition:all var(--transition-fast);width:24px}.clear-button:hover{background-color:var(--bg-light);color:var(--text-secondary)}.clear-button:active{transform:scale(.95)}.clear-button:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:768px){.search-bar{min-width:200px}.search-input{padding:var(--spacing-sm) 2rem var(--spacing-sm) 2.25rem}.search-icon,.search-input{font-size:var(--font-size-sm)}.search-icon{left:var(--spacing-sm)}.clear-button{font-size:var(--font-size-md);height:20px;right:var(--spacing-xs);width:20px}}@media (max-width:480px){.search-bar{min-width:0;min-width:auto}.search-input{padding:var(--spacing-xs) 1.75rem var(--spacing-xs) 2rem}}.search-input.loading{animation:searchLoading 1.5s infinite;background-image:linear-gradient(90deg,#0000,#2d5a271a,#0000);background-size:200% 100%}@keyframes searchLoading{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-contrast:high){.search-input{border:3px solid var(--text-primary)}.search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color)}.clear-button{background-color:var(--bg-light);border:1px solid var(--text-secondary)}}@media (prefers-reduced-motion:reduce){.clear-button,.search-input{transition:none}.search-input.loading{animation:none;background-image:none}}.loader-container{flex-direction:column;padding:var(--spacing-xl)}.loader,.loader-container{align-items:center;display:flex;justify-content:center}.loader-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--border-light);border:3px solid var(--border-light);border-radius:50%;border-top-color:var(--primary-color)}.loader.small .loader-spinner{border-width:2px;height:20px;width:20px}.loader.medium .loader-spinner{border-width:3px;height:32px;width:32px}.loader.large .loader-spinner{border-width:4px;height:48px;width:48px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loader-message{color:var(--text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);margin-top:var(--spacing-md);text-align:center}.loader.inline{display:inline-flex;margin-right:var(--spacing-sm);padding:0}.loader.inline .loader-spinner{border-width:2px;height:16px;width:16px}.loader.inline+.loader-message{display:inline;margin-left:var(--spacing-sm);margin-top:0}.loader.dots{display:flex;gap:var(--spacing-xs)}.loader.dots .loader-spinner{display:none}.loader.dots,.loader.dots:after,.loader.dots:before{animation:dotPulse 1.4s ease-in-out infinite both;background-color:var(--primary-color);border-radius:50%;content:"";height:8px;width:8px}.loader.dots:before{animation-delay:-.32s}.loader.dots:after{animation-delay:-.16s}@keyframes dotPulse{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.loader-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#ffffffe6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loader-overlay .loader-container{background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-heavy);max-width:300px;padding:var(--spacing-xl);text-align:center}.loader.skeleton{animation:skeletonLoading 1.5s infinite;background:linear-gradient(90deg,var(--bg-light) 25%,var(--border-light) 50%,var(--bg-light) 75%);background-size:200% 100%;border-radius:var(--border-radius-small)}.loader.skeleton .loader-spinner{display:none}@keyframes skeletonLoading{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width:768px){.loader-container{padding:var(--spacing-lg)}.loader-message{font-size:var(--font-size-sm)}.loader.large .loader-spinner{height:40px;width:40px}}@media (max-width:480px){.loader-container{padding:var(--spacing-md)}.loader.large .loader-spinner{border-width:3px;height:32px;width:32px}}@media (prefers-contrast:high){.loader-spinner{border-color:var(--text-primary);border-top-color:var(--primary-color)}.loader.dots,.loader.dots:after,.loader.dots:before{background-color:var(--primary-color)}.loader-overlay{background-color:#fffffff2}}@media (prefers-reduced-motion:reduce){.loader-spinner{animation:none;border:3px solid var(--primary-color);border-radius:50%}.loader.dots,.loader.dots:after,.loader.dots:before{animation:none;opacity:1;transform:scale(1)}.loader.skeleton{animation:none;background:var(--bg-light)}}.error-message{align-items:flex-start;background-color:var(--bg-primary);border-left:4px solid;border-radius:var(--border-radius);box-shadow:var(--shadow-light);display:flex;gap:var(--spacing-md);margin:var(--spacing-md) 0;padding:var(--spacing-lg)}.error-message.error{background-color:#f443360d;border-left-color:var(--error-color)}.error-message.warning{background-color:#ff98000d;border-left-color:var(--warning-color)}.error-message.info{background-color:#2196f30d;border-left-color:var(--info-color)}.error-message.success{background-color:#4caf500d;border-left-color:var(--success-color)}.error-icon{flex-shrink:0;font-size:var(--font-size-xl);margin-top:2px}.error-message.error .error-icon{color:var(--error-color)}.error-message.warning .error-icon{color:var(--warning-color)}.error-message.info .error-icon{color:var(--info-color)}.error-message.success .error-icon{color:var(--success-color)}.error-content{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-md)}.error-text{color:var(--text-primary);font-size:var(--font-size-md);line-height:1.5;margin:0}.retry-button{align-items:center;align-self:flex-start;background-color:var(--primary-color);border:none;border-radius:var(--border-radius-small);color:var(--text-light);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);transition:all var(--transition-fast)}.retry-button:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-light);transform:translateY(-1px)}.retry-button:active{transform:translateY(0)}.retry-button:focus{outline:2px solid var(--primary-color);outline-offset:2px}.error-message.compact{margin:var(--spacing-sm) 0;padding:var(--spacing-md)}.error-message.compact .error-icon{font-size:var(--font-size-lg)}.error-message.compact .error-text{font-size:var(--font-size-sm)}.error-message.compact .retry-button{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-md)}.error-message.inline{border-left-width:3px;border-radius:var(--border-radius-small);display:inline-flex;margin:0;padding:var(--spacing-sm)}.error-message.inline .error-icon{font-size:var(--font-size-md);margin-top:0}.error-message.inline .error-text{font-size:var(--font-size-sm)}.error-message.dismissible{position:relative}.dismiss-button{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--font-size-lg);height:24px;justify-content:center;padding:var(--spacing-xs);position:absolute;right:var(--spacing-sm);top:var(--spacing-sm);transition:all var(--transition-fast);width:24px}.dismiss-button:hover{background-color:#0000001a;color:var(--text-secondary)}.dismiss-button:focus{outline:2px solid var(--primary-color);outline-offset:2px}@keyframes errorSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-message{animation:errorSlideIn .3s ease-out}@media (max-width:768px){.error-message{padding:var(--spacing-md)}.error-content,.error-message{gap:var(--spacing-sm)}.error-text{font-size:var(--font-size-sm)}.retry-button{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-md)}}@media (max-width:480px){.error-message{flex-direction:column;padding:var(--spacing-sm);text-align:center}.error-icon{margin-top:0}.error-icon,.retry-button{align-self:center}}@media (prefers-contrast:high){.error-message{border:2px solid;border-left:6px solid}.error-message.error{background-color:#f443361a;border-color:var(--error-color)}.error-message.warning{background-color:#ff98001a;border-color:var(--warning-color)}.error-message.info{background-color:#2196f31a;border-color:var(--info-color)}.error-message.success{background-color:#4caf501a;border-color:var(--success-color)}.retry-button{border:2px solid var(--primary-color)}}@media (prefers-reduced-motion:reduce){.error-message{animation:none}.retry-button:hover{transform:none}}.plant-catalog{margin:0 auto;max-width:1200px;padding:0 var(--spacing-md)}.catalog-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg) 0;text-align:center}.catalog-header h1{color:var(--primary-color);font-size:var(--font-size-xxxl);font-weight:var(--font-weight-bold);letter-spacing:-.5px;margin-bottom:var(--spacing-sm)}.catalog-header p{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0 auto;max-width:600px}.filters-section{background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--border-radius);box-shadow:var(--shadow-light);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.filters-container{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.clear-filters-btn{background-color:var(--accent-color);border:none;border-radius:var(--border-radius-small);color:var(--text-light);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast);white-space:nowrap}.clear-filters-btn:hover{background-color:#e55a2b;transform:translateY(-1px)}.clear-filters-btn:active{transform:translateY(0)}.active-filters{align-items:center;border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding-top:var(--spacing-md)}.filters-label{color:var(--text-secondary);font-size:var(--font-size-sm)}.filter-tag,.filters-label{font-weight:var(--font-weight-medium)}.filter-tag{align-items:center;background-color:var(--primary-light);border-radius:var(--border-radius-small);color:var(--text-light);display:inline-flex;font-size:var(--font-size-xs);gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.catalog-content{min-height:400px}.results-info{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg);padding:var(--spacing-md) 0}.results-count{color:var(--text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.plants-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:var(--spacing-xl)}.no-results{background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--border-radius);box-shadow:var(--shadow-light);padding:var(--spacing-xxl);text-align:center}.no-results-icon{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.5}.no-results h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-md)}.no-results p{color:var(--text-secondary);font-size:var(--font-size-md);margin-bottom:var(--spacing-lg);margin-left:auto;margin-right:auto;max-width:400px}.catalog-content .loader-container{padding:var(--spacing-xxl)}.catalog-content .error-message{margin:var(--spacing-xl) 0}@media (max-width:768px){.plant-catalog{padding:0 var(--spacing-sm)}.catalog-header{margin-bottom:var(--spacing-lg);padding:var(--spacing-md) 0}.catalog-header h1{font-size:var(--font-size-xxl)}.catalog-header p{font-size:var(--font-size-md)}.filters-section{margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.filters-container{align-items:stretch;flex-direction:column;gap:var(--spacing-sm)}.plants-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.results-info{align-items:flex-start;flex-direction:column;gap:var(--spacing-sm)}}@media (max-width:480px){.catalog-header h1{font-size:var(--font-size-xl)}.filters-section{padding:var(--spacing-sm)}.plants-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.no-results{padding:var(--spacing-lg)}.no-results-icon{font-size:3rem}.no-results h3{font-size:var(--font-size-lg)}.active-filters{align-items:flex-start;flex-direction:column}}@keyframes gridItemFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.plants-grid>*{animation:gridItemFadeIn .3s ease-out}.plants-grid>:first-child{animation-delay:.05s}.plants-grid>:nth-child(2){animation-delay:.1s}.plants-grid>:nth-child(3){animation-delay:.15s}.plants-grid>:nth-child(4){animation-delay:.2s}.plants-grid>:nth-child(5){animation-delay:.25s}.plants-grid>:nth-child(6){animation-delay:.3s}@media (prefers-contrast:high){.filters-section,.no-results{border:2px solid var(--text-primary)}.filter-tag{border:1px solid var(--text-light)}}.add-plant-form{margin:0 auto;max-width:600px;padding:0 var(--spacing-md)}.form-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg) 0;position:relative;text-align:center}.admin-status{background-color:#2d5a271a;border:1px solid #2d5a274d;border-radius:var(--border-radius);gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-lg);margin-left:auto;margin-right:auto;max-width:300px;padding:var(--spacing-sm) var(--spacing-md)}.admin-badge,.admin-status{align-items:center;display:flex}.admin-badge{color:var(--primary-color);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-xs)}.logout-btn{background-color:var(--accent-color);border:none;border-radius:var(--border-radius-small);color:var(--text-light);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);transition:all var(--transition-fast)}.logout-btn:hover{background-color:#e55a2b;transform:translateY(-1px)}.logout-btn:active{transform:translateY(0)}.form-header h1{color:var(--primary-color);font-size:var(--font-size-xxxl);font-weight:var(--font-weight-bold);letter-spacing:-.5px;margin-bottom:var(--spacing-sm)}.form-header p{color:var(--text-secondary);font-size:var(--font-size-lg)}.success-message{align-items:center;animation:successSlideIn .3s ease-out;background-color:#4caf501a;border:1px solid #4caf504d;border-left:4px solid var(--success-color);border-radius:var(--border-radius);color:var(--success-color);display:flex;font-weight:var(--font-weight-medium);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.success-icon{font-size:var(--font-size-lg)}@keyframes successSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.plant-form{background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--border-radius);box-shadow:var(--shadow-light);padding:var(--spacing-xl)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.form-input,.form-label{color:var(--text-primary);font-size:var(--font-size-md)}.form-input{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);font-family:inherit;padding:var(--spacing-md);transition:all var(--transition-fast);width:100%}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2d5a271a;outline:none}.form-input:hover:not(:focus){border-color:var(--primary-light)}.form-input.error{background-color:#f443360d;border-color:var(--error-color)}.form-input.error:focus{box-shadow:0 0 0 3px #f443361a}.form-help{color:var(--text-muted);line-height:1.4}.error-text,.form-help{display:block;font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.error-text{color:var(--error-color);font-weight:var(--font-weight-medium)}.checkbox-label{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-md);gap:var(--spacing-sm)}.form-checkbox{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius-small);cursor:pointer;height:18px;position:relative;transition:all var(--transition-fast);width:18px}.form-checkbox:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.form-checkbox:checked:after{color:var(--text-light);content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.form-checkbox:focus{outline:2px solid var(--primary-color);outline-offset:2px}.checkbox-text{font-weight:var(--font-weight-medium)}.suggested-categories{margin-top:var(--spacing-md)}.suggestions-label{color:var(--text-secondary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-sm)}.category-suggestions{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.category-suggestion{background-color:var(--bg-light);border:1px solid var(--border-color);border-radius:var(--border-radius-small);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);transition:all var(--transition-fast)}.category-suggestion:hover{background-color:var(--primary-light);border-color:var(--primary-light);color:var(--text-light);transform:translateY(-1px)}.category-suggestion:active{transform:translateY(0)}.category-suggestion:focus{outline:2px solid var(--primary-color);outline-offset:2px}.form-actions{margin-top:var(--spacing-xl)}.form-actions,.submit-button{display:flex;justify-content:center}.submit-button{align-items:center;background-color:var(--primary-color);border:none;border-radius:var(--border-radius);color:var(--text-light);cursor:pointer;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);min-width:140px;padding:var(--spacing-md) var(--spacing-xl);transition:all var(--transition-fast)}.submit-button:hover:not(:disabled){background-color:var(--primary-dark);box-shadow:var(--shadow-medium);transform:translateY(-2px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{background-color:var(--text-muted);box-shadow:none;cursor:not-allowed;transform:none}.submit-button:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:768px){.add-plant-form{padding:0 var(--spacing-sm)}.form-header{margin-bottom:var(--spacing-lg);padding:var(--spacing-md) 0}.form-header h1{font-size:var(--font-size-xxl)}.form-header p{font-size:var(--font-size-md)}.plant-form{padding:var(--spacing-lg)}.form-input{padding:var(--spacing-sm)}.submit-button{padding:var(--spacing-sm) var(--spacing-lg);width:100%}}@media (max-width:480px){.form-header h1{font-size:var(--font-size-xl)}.plant-form{padding:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.category-suggestions{gap:var(--spacing-xs)}.category-suggestion{font-size:.65rem;padding:2px var(--spacing-xs)}}@media (prefers-contrast:high){.plant-form{border:2px solid var(--text-primary)}.form-input{border:3px solid var(--text-primary)}.form-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color)}.form-checkbox{border:3px solid var(--text-primary)}.category-suggestion{border:2px solid var(--text-secondary)}.success-message{background-color:#4caf5033;border:2px solid var(--success-color)}}@media (prefers-reduced-motion:reduce){.category-suggestion,.form-checkbox,.form-input,.submit-button{transition:none}.category-suggestion:hover,.submit-button:hover:not(:disabled){transform:none}.success-message{animation:none}}.App{background-color:var(--bg-secondary);display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:var(--spacing-lg) 0;padding-left:var(--spacing-md);padding-right:var(--spacing-md);width:100%}.error-boundary{background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-light);margin:var(--spacing-lg);padding:var(--spacing-xl);text-align:center}.error-details{background-color:var(--bg-light);border:1px solid var(--border-color);border-radius:var(--border-radius-small);margin-top:var(--spacing-lg);padding:var(--spacing-md);text-align:left}.error-details summary{color:var(--text-secondary);cursor:pointer;font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-sm)}.error-details pre{color:var(--error-color);font-size:var(--font-size-sm);margin:var(--spacing-sm) 0;white-space:pre-wrap;word-break:break-word}.not-found{background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-light);margin:var(--spacing-xl) auto;max-width:500px;padding:var(--spacing-xxl);text-align:center}.not-found h2{color:var(--primary-color);font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-md)}.not-found p{color:var(--text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}@media (max-width:768px){.main-content{padding:var(--spacing-md) var(--spacing-sm)}.not-found{margin:var(--spacing-lg) var(--spacing-sm);padding:var(--spacing-xl) var(--spacing-lg)}.not-found h2{font-size:var(--font-size-xl)}.not-found p{font-size:var(--font-size-md)}}@media (max-width:480px){.main-content{padding:var(--spacing-sm)}.error-boundary{margin:var(--spacing-md)}.error-boundary,.not-found{padding:var(--spacing-lg)}}
/*# sourceMappingURL=main.a4320f8b.css.map*/