.auth-form{margin-top:16px}.auth-form h2{margin-bottom:20px;color:var(--text-primary);text-align:center;font-size:24px}.form-footer{text-align:center;margin-top:16px;color:var(--text-secondary);font-size:14px}.form-footer a{color:var(--primary-color);text-decoration:none;font-weight:500}.form-footer a:hover{text-decoration:underline}.divider{text-align:center;margin:20px 0;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color, #e0e0e0)}.divider span{background:var(--bg-primary, #ffffff);padding:0 16px;color:var(--text-secondary);font-size:14px}.btn-google{background:#fff;color:#757575;border:1px solid #dadce0;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:500;transition:all .2s ease;position:relative;padding:12px 16px}.btn-google:hover{background:#f8f9fa;border-color:#c6c6c6;box-shadow:0 1px 3px #0000001a}.btn-google:disabled{background:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.auth-form .form-group{margin-bottom:16px}.auth-form .form-group:last-of-type{margin-bottom:20px}.auth-form .btn{margin-top:8px}@media (max-width: 480px){.modal-content{padding:20px;margin:10px}.auth-form h2{font-size:20px;margin-bottom:16px}.auth-form .form-group{margin-bottom:14px}.auth-form .form-group:last-of-type{margin-bottom:16px}.divider{margin:16px 0}.btn-google{font-size:14px;padding:10px 16px}}.settings-modal{max-width:700px;max-height:90vh;overflow-y:auto;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 20px 40px #0000004d;position:relative;z-index:100000!important}.settings-modal-overlay{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;background-color:#0009!important;z-index:99999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important}.settings-modal-overlay *{z-index:100001!important}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.modal-content{background-color:var(--bg-secondary);border-radius:12px;padding:32px;max-width:700px;width:100%;position:relative;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);max-height:90vh;overflow-y:auto;z-index:10000}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;color:var(--text-primary);font-size:1.5rem;font-weight:600}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:4px;border-radius:4px;transition:all .3s ease}.modal-close:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.modal-body{margin-bottom:24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-color)}.settings-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.settings-section:last-child{border-bottom:none;margin-bottom:0}.settings-section-title{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.settings-section-title i{color:var(--primary-color);width:20px}.profile-info{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.profile-avatar{width:60px;height:60px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600}.profile-details{flex:1}.profile-name{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.profile-email{font-size:.9rem;color:var(--text-secondary)}.profile-actions{display:flex;gap:.5rem;flex-wrap:wrap}.theme-option{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--border-light)}.theme-option:last-child{border-bottom:none}.theme-info{flex:1}.theme-label{display:block;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.theme-description{display:block;font-size:.85rem;color:var(--text-secondary)}.theme-toggle{position:relative;display:inline-block;width:50px;height:24px}.theme-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}input:checked+.toggle-slider{background-color:var(--primary-color)}input:checked+.toggle-slider:before{transform:translate(26px)}.about-info{display:flex;flex-direction:column;gap:.75rem}.about-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.about-label{font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.about-label i{width:16px;color:var(--primary-color)}.about-value{color:var(--text-secondary);font-size:.9rem}.about-link{color:var(--primary-color);text-decoration:none;font-size:.9rem;font-weight:500;transition:all .3s ease}.about-link:hover{color:var(--secondary-color);text-decoration:underline}@media (max-width: 768px){.settings-modal{max-width:95vw;margin:1rem}.modal-content{padding:24px;max-width:95vw}.profile-info{flex-direction:column;text-align:center}.profile-actions{justify-content:center}.theme-option{flex-direction:column;align-items:flex-start;gap:1rem}.theme-toggle{align-self:flex-end}}.header{background-color:var(--bg-secondary);box-shadow:var(--shadow);position:fixed;top:0;left:0;right:0;z-index:300;border-bottom:1px solid var(--border-color)}.header .container{display:flex;align-items:center;justify-content:space-between;padding:12px 20px}.logo{display:flex;align-items:center;gap:12px}.logo-icon{font-size:32px}.logo-link{text-decoration:none;color:inherit}.logo h1{font-size:24px;font-weight:700;color:var(--primary-color);margin:0}.nav{display:flex;gap:32px}.nav-link{text-decoration:none;color:var(--text-secondary);font-weight:500;transition:color .3s ease;position:relative}.nav-link:hover,.nav-link.active{color:var(--primary-color)}.nav-link.active:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:3px;background-color:var(--primary-color);border-radius:2px}.header-actions{display:flex;align-items:center;gap:16px}.auth-buttons{display:flex;gap:12px;align-items:center}.user-menu{display:flex;align-items:center;gap:16px;padding:8px 16px;background:var(--bg-light);border-radius:12px;border:1px solid var(--border-color)}.user-info{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;background:var(--primary-color);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.user-details{display:flex;flex-direction:column;gap:2px}.user-name{color:var(--text-dark);font-weight:600;font-size:14px}.user-email{color:var(--text-light);font-size:12px}.user-actions{display:flex;align-items:center}.btn-small{padding:6px 12px;font-size:12px}.mobile-menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:4px;gap:4px}.mobile-menu-toggle span{width:24px;height:3px;background-color:var(--text-dark);border-radius:2px;transition:all .3s ease}.mobile-menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:150;opacity:0;visibility:hidden;transition:all .3s ease}.mobile-menu-overlay.show{opacity:1;visibility:visible}.mobile-menu{position:fixed;top:0;right:-300px;width:300px;height:100%;background-color:var(--bg-secondary);z-index:200;transition:right .3s ease;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;border-left:1px solid var(--border-color)}.mobile-menu.open{right:0}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--border-color)}.mobile-menu-header h3{margin:0;color:var(--text-primary);font-size:18px}.mobile-menu-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.mobile-menu-close:hover{color:var(--text-primary)}.mobile-nav{padding:20px;flex:1}.mobile-nav-link{display:block;padding:12px 0;text-decoration:none;color:var(--text-primary);font-weight:500;border-bottom:1px solid var(--border-color);transition:color .3s ease}.mobile-nav-link:hover{color:var(--primary-color)}.mobile-user-section,.mobile-auth-section{padding:20px;border-top:1px solid var(--border-color)}.mobile-user-info{display:flex;align-items:center;gap:12px;margin-bottom:16px}.mobile-user-avatar{width:48px;height:48px;background:var(--primary-color);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px}.mobile-user-details{display:flex;flex-direction:column;gap:4px}.mobile-user-name{color:var(--text-primary);font-weight:600;font-size:16px}.mobile-user-email{color:var(--text-secondary);font-size:14px}.mobile-auth-section{display:flex;flex-direction:column;gap:12px}@media (max-width: 768px){.header .container{padding:8px 16px}.desktop-nav,.desktop-auth{display:none}.mobile-menu-toggle{display:flex}.logo h1{font-size:18px}.logo-icon{font-size:24px}.mobile-menu-open .desktop-nav{display:none}}.settings-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:20px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);transition:all .3s ease}.settings-btn:hover{background:var(--primary-color);color:var(--white);border-color:var(--primary-color);transform:translateY(-1px)}.settings-btn i{font-size:14px}.user-name-short{width:24px;height:24px;background:var(--primary-color);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.settings-btn:hover .user-name-short{background:var(--white);color:var(--primary-color)}.plant-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;transition:transform .3s ease,box-shadow .3s ease;height:100%;display:flex;flex-direction:column;cursor:pointer}.plant-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026}.plant-image{position:relative;height:200px;overflow:hidden;flex-shrink:0}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#000000b3;color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .3s ease;z-index:10;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2)}.carousel-arrow:hover{background:#000000e6;transform:translateY(-50%) scale(1.1);box-shadow:0 4px 12px #0000004d}.carousel-arrow.left{left:10px}.carousel-arrow.right{right:10px}.carousel-indicator{position:absolute;bottom:10px;right:10px;background:#000c;color:#fff;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2);min-width:fit-content;text-align:center}.plant-info{padding:1.5rem;flex:1;display:flex;flex-direction:column}.plant-name{font-size:1.3rem;color:#2c3e50;margin:0 0 .5rem;line-height:1.3}.plant-scientific{font-style:italic;color:#7f8c8d;margin:0 0 1rem;font-size:.9rem}.plant-details{margin-bottom:1rem;flex:1}.plant-type{display:inline-flex;align-items:center;gap:.5rem;background:#f8f9fa;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;color:#2c3e50;margin-bottom:1rem}.plant-type i{color:#2ecc71}.plant-description{color:#7f8c8d;line-height:1.6;margin:0 0 1rem;font-size:.9rem}.plant-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e9ecef;font-size:.9rem;margin-top:auto}.plant-owner,.plant-date{display:flex;align-items:center;gap:.5rem;color:#7f8c8d}.plant-owner i,.plant-date i{color:#2ecc71}.badge{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;z-index:1}.location-btn{display:inline-flex;align-items:center;gap:.5rem;background:#3498db;color:#fff;border:none;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.location-btn:hover{background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 12px #3498db4d}.location-btn i{font-size:.8rem}@media (max-width: 768px){.plant-card{margin-bottom:1rem}.plant-image{height:180px}.plant-info{padding:1rem}.plant-name{font-size:1.2rem}.plant-footer{flex-direction:column;gap:.5rem;align-items:flex-start}}.image-not-found-text{margin-top:.5rem;color:#888;font-size:.95rem;text-align:center}.home{min-height:100vh}.main{padding-top:80px}@media (max-width: 768px){.main{padding-top:80px}}.hero{background:linear-gradient(135deg,var(--primary-color) 0%,#2f855a 100%);color:var(--white);padding:80px 0}.hero .container{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.hero-content h2{font-size:48px;font-weight:700;margin-bottom:24px;line-height:1.2}.hero-content p{font-size:20px;margin-bottom:32px;opacity:.9;line-height:1.6}.hero-buttons{display:flex;gap:16px;flex-wrap:wrap}.hero-buttons .btn-primary{background-color:#fff;color:var(--primary-color);border:2px solid #ffffff}.hero-buttons .btn-primary:hover{background-color:#f7fafc;color:var(--primary-color);transform:translateY(-2px)}.hero-buttons .btn-outline{background-color:transparent;color:#fff;border:2px solid #ffffff}.hero-buttons .btn-outline:hover{background-color:#fff;color:var(--primary-color)}.hero-image{display:flex;justify-content:center;align-items:center}.plant-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.plant-grid .plant-card{background:#ffffff1a;border-radius:16px;padding:40px;text-align:center;font-size:48px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.features{padding:80px 0;background-color:var(--white)}.section-title{text-align:center;font-size:36px;font-weight:700;margin-bottom:60px;color:var(--text-dark)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px}.feature-card{text-align:center;padding:40px 20px;border-radius:16px;background:var(--white);box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.feature-icon{font-size:48px;margin-bottom:24px}.feature-card h3{font-size:24px;font-weight:600;margin-bottom:16px;color:var(--text-dark)}.feature-card p{color:var(--text-light);line-height:1.6}.stats{padding:80px 0;background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.stats .section-title{color:#fff;text-align:center;margin-bottom:.5rem}.section-subtitle{text-align:center;font-size:1.1rem;color:#ffffffe6;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.stat-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:2rem;text-align:center;transition:all .3s ease}.stat-card:hover{transform:translateY(-5px);background:#ffffff26;box-shadow:0 8px 30px #0003}.stat-icon{font-size:3rem;margin-bottom:1rem;display:block}.stat-content h3{font-size:2.5rem;font-weight:700;margin:0 0 .5rem;color:#fff}.stat-content p{font-size:1rem;margin:0;color:#ffffffe6;font-weight:500}.stats-loading{text-align:center;padding:3rem}.stats-loading .loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.stats-loading p{color:#ffffffe6;font-size:1.1rem}.stats-error{text-align:center;padding:3rem;background:#ffffff1a;border-radius:12px;border:1px solid rgba(255,255,255,.2)}.stats-error p{color:#ffffffe6;font-size:1.1rem;margin:0}.plants{padding:80px 0;background-color:var(--bg-light)}.plants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:2rem}.plants-loading{text-align:center;padding:4rem 2rem;background:var(--white);border-radius:16px;box-shadow:var(--shadow)}.plants-loading .loading-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.plants-loading p{color:var(--text-light);font-size:1.1rem;margin:0}.no-plants{text-align:center;padding:4rem 2rem;background:var(--white);border-radius:16px;box-shadow:var(--shadow)}.no-plants-icon{font-size:4rem;margin-bottom:1rem;opacity:.6}.no-plants h3{font-size:1.5rem;font-weight:600;color:var(--text-dark);margin-bottom:.5rem}.no-plants p{color:var(--text-light);font-size:1rem;margin:0}.plant-emoji{font-size:48px;text-align:center;margin-bottom:16px}.plant-image{position:relative;margin-bottom:16px;border-radius:12px;overflow:hidden;height:200px;background:var(--bg-light)}.plant-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.plant-card:hover .plant-image img{transform:scale(1.05)}.footer{background-color:var(--text-dark);color:var(--white);padding:60px 0 20px}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:40px}.footer-section h3,.footer-section h4{margin-bottom:16px;color:var(--white)}.footer-section p{color:#a0aec0;line-height:1.6}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:8px}.footer-section ul li a{color:#a0aec0;text-decoration:none;transition:color .3s ease}.footer-section ul li a:hover{color:var(--white)}.contact-link{color:#a0aec0!important;text-decoration:none;transition:color .3s ease}.contact-link:hover{color:var(--primary-color)!important}.footer-bottom{border-top:1px solid #4a5568;padding-top:20px;text-align:center;color:#a0aec0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:var(--bg-light)}.loading-container p{margin-top:16px;color:var(--text-light);font-size:16px}@media (max-width: 768px){.hero .container{grid-template-columns:1fr;gap:40px;text-align:center}.hero-content h2{font-size:32px}.hero-content p{font-size:18px}.hero-buttons{justify-content:center}.section-title{font-size:28px}.features-grid{grid-template-columns:1fr;gap:30px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-card{padding:1.5rem}.stat-content h3{font-size:2rem}.stat-icon{font-size:2.5rem}.plants-grid{grid-template-columns:1fr}.footer-content{grid-template-columns:1fr;gap:30px}}@media (max-width: 600px){.plant-carousel,.plant-carousel-img{height:200px;width:200px}.carousel-arrow{font-size:14px;padding:4px 6px;width:28px;height:28px}}.about{min-height:100vh}.about-hero{background:linear-gradient(135deg,var(--primary-color) 0%,#2f855a 100%);color:var(--white);padding:120px 0 80px;text-align:center}.about-hero-content h1{font-size:48px;font-weight:700;margin-bottom:24px;line-height:1.2}.about-hero-content p{font-size:20px;opacity:.9;line-height:1.6;max-width:600px;margin:0 auto}.mission-vision{padding:80px 0;background-color:var(--white)}.mission-vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.mission-card,.vision-card{text-align:center;padding:40px;border-radius:16px;background:var(--white);box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.mission-card:hover,.vision-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.mission-icon,.vision-icon{font-size:64px;margin-bottom:24px}.mission-card h2,.vision-card h2{font-size:28px;font-weight:600;margin-bottom:16px;color:var(--text-dark)}.mission-card p,.vision-card p{color:var(--text-light);line-height:1.6}.history{padding:80px 0;background-color:var(--bg-light)}.history-content{display:grid;grid-template-columns:2fr 1fr;gap:60px;align-items:start}.history-text p{font-size:18px;line-height:1.8;color:var(--text-dark);margin-bottom:24px}.history-stats{display:flex;flex-direction:column;gap:32px}.stat-item{text-align:center;padding:24px;background:var(--white);border-radius:12px;box-shadow:var(--shadow)}.stat-number{font-size:36px;font-weight:700;color:var(--primary-color);margin-bottom:8px}.stat-label{color:var(--text-light);font-weight:500}.values{padding:80px 0;background-color:var(--white)}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px}.value-card{text-align:center;padding:40px 20px;border-radius:16px;background:var(--white);box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.value-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.value-icon{font-size:48px;margin-bottom:24px}.value-card h3{font-size:24px;font-weight:600;margin-bottom:16px;color:var(--text-dark)}.value-card p{color:var(--text-light);line-height:1.6}.team{padding:80px 0;background-color:var(--bg-light)}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px}.team-member{text-align:center;padding:40px 20px;background:var(--white);border-radius:16px;box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.team-member:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.member-avatar{font-size:64px;margin-bottom:24px}.team-member h3{font-size:24px;font-weight:600;margin-bottom:8px;color:var(--text-dark)}.member-role{color:var(--primary-color);font-weight:500;margin-bottom:16px}.member-bio{color:var(--text-light);line-height:1.6}.about-cta{padding:80px 0;background:linear-gradient(135deg,var(--primary-color) 0%,#2f855a 100%);color:var(--white);text-align:center}.cta-content h2{font-size:36px;font-weight:700;margin-bottom:16px}.cta-content p{font-size:18px;margin-bottom:32px;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.cta-buttons .btn-outline{background-color:transparent;color:var(--white);border:2px solid var(--white)}.cta-buttons .btn-outline:hover{background-color:var(--white);color:var(--primary-color)}@media (max-width: 768px){.about-hero-content h1{font-size:32px}.about-hero-content p{font-size:18px}.mission-vision-grid,.history-content{grid-template-columns:1fr;gap:40px}.history-stats{flex-direction:row;justify-content:space-around}.stat-item{flex:1;padding:16px}.stat-number{font-size:28px}.values-grid,.team-grid{grid-template-columns:1fr;gap:30px}.cta-content h2{font-size:28px}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn{width:100%;max-width:300px}}.plants-page{min-height:100vh}.plants-hero{background:linear-gradient(135deg,var(--primary-color) 0%,#2f855a 100%);color:var(--white);padding:120px 0 80px;text-align:center}.plants-hero-content h1{font-size:48px;font-weight:700;margin-bottom:24px;line-height:1.2}.plants-hero-content p{font-size:20px;opacity:.9;line-height:1.6;max-width:600px;margin:0 auto}.filters-section{padding:40px 0;background-color:var(--white);border-bottom:1px solid var(--border-color)}.filters-content h2{text-align:center;font-size:24px;font-weight:600;margin-bottom:24px;color:var(--text-dark)}.filter-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.filter-btn{padding:8px 16px;border:2px solid var(--border-color);background:var(--white);color:var(--text-dark);border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.filter-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.filter-btn.active{background:var(--primary-color);color:var(--white);border-color:var(--primary-color)}.plants-section{padding:60px 0;background-color:var(--bg-light)}.plants-stats{display:flex;justify-content:center;gap:40px;margin-bottom:40px}.plants-stats .stat-item{text-align:center;padding:20px;background:var(--white);border-radius:12px;box-shadow:var(--shadow);min-width:150px}.plants-stats .stat-number{display:block;font-size:32px;font-weight:700;color:var(--primary-color);margin-bottom:8px}.plants-stats .stat-label{color:var(--text-light);font-size:14px;font-weight:500}.plants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:40px;max-width:1200px;margin-left:auto;margin-right:auto}.plant-card{background:var(--white);border-radius:16px;padding:24px;box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.plant-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.plant-emoji-fallback{font-size:48px;text-align:center;display:flex;align-items:center;justify-content:center;height:100%;background:var(--bg-light)}.plant-card h3{font-size:20px;font-weight:600;margin-bottom:8px;color:var(--text-dark)}.plant-scientific{font-style:italic;color:var(--text-light);margin-bottom:8px;font-size:14px}.plant-location{color:var(--text-light);margin-bottom:16px;font-size:14px}.plant-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-light)}.plant-group{background:var(--primary-color);color:var(--white);padding:4px 8px;border-radius:12px;font-weight:500}.plant-author{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color);font-size:12px;color:var(--text-light)}.author-label{display:block;margin-bottom:4px}.author-name{color:var(--primary-color);font-weight:500}.load-more{text-align:center}.plant-carousel{position:relative;display:flex;align-items:center;justify-content:center;background:var(--bg-light);border-radius:12px;overflow:hidden;height:250px;width:250px;margin:0 auto 16px}.plant-carousel-img{width:100%;height:100%;object-fit:cover;border-radius:12px}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;font-size:16px;padding:6px 8px;border-radius:50%;cursor:pointer;z-index:2;transition:background .2s;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.carousel-arrow.left{left:8px}.carousel-arrow.right{right:8px}.carousel-arrow:hover{background:var(--primary-color);color:var(--white)}.carousel-indicator{position:absolute;bottom:8px;left:50%;transform:translate(-50%);background:#00000080;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px}.no-results{text-align:center;padding:60px 20px;background:var(--white);border-radius:16px;box-shadow:var(--shadow)}.no-results-icon{font-size:64px;margin-bottom:24px}.no-results h3{font-size:24px;font-weight:600;margin-bottom:16px;color:var(--text-dark)}.no-results p{color:var(--text-light);line-height:1.6}.auth-required{display:flex;justify-content:center;align-items:center;min-height:400px}.auth-message{text-align:center;max-width:500px;padding:60px 40px;background:var(--white);border-radius:16px;box-shadow:var(--shadow)}.auth-icon{font-size:64px;margin-bottom:24px}.auth-message h3{font-size:28px;font-weight:600;margin-bottom:16px;color:var(--text-dark)}.auth-message p{color:var(--text-light);margin-bottom:32px;line-height:1.6}.auth-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}@media (max-width: 768px){.plants-hero-content h1{font-size:32px}.plants-hero-content p{font-size:18px}.filters-content h2{font-size:20px}.filter-buttons{gap:8px}.filter-btn{padding:6px 12px;font-size:12px}.plants-stats{flex-direction:column;gap:20px;align-items:center}.plants-stats .stat-item{min-width:120px}.plants-grid{grid-template-columns:1fr;gap:20px}.plant-carousel,.plant-carousel-img{height:200px;width:200px}.carousel-arrow{font-size:14px;padding:4px 6px;width:28px;height:28px}}.contact{min-height:100vh}.contact-hero{background:linear-gradient(135deg,var(--primary-color) 0%,#2f855a 100%);color:var(--white);padding:120px 0 80px;text-align:center}.contact-hero-content h1{font-size:48px;font-weight:700;margin-bottom:24px;line-height:1.2}.contact-hero-content p{font-size:20px;opacity:.9;line-height:1.6;max-width:600px;margin:0 auto}.contact-info{padding:80px 0;background-color:var(--white)}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px}.contact-card{text-align:center;padding:40px 20px;border-radius:16px;background:var(--white);box-shadow:var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.contact-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.contact-icon{font-size:48px;margin-bottom:24px}.contact-card h3{font-size:24px;font-weight:600;margin-bottom:12px;color:var(--text-dark)}.contact-card p{color:var(--text-light);margin-bottom:16px;line-height:1.6}.contact-card .contact-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .3s ease}.contact-card .contact-link:hover{color:#2f855a}.contact-text{color:var(--text-dark);font-weight:500}.contact-form-section{padding:80px 0;background-color:var(--bg-light)}.contact-form-container{max-width:800px;margin:0 auto;background:var(--white);border-radius:16px;padding:40px;box-shadow:var(--shadow)}.form-header{text-align:center;margin-bottom:40px}.form-header h2{font-size:32px;font-weight:700;margin-bottom:16px;color:var(--text-dark)}.form-header p{color:var(--text-light);line-height:1.6}.contact-form{display:flex;flex-direction:column;gap:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:8px;font-weight:500;color:var(--text-dark)}.form-group input,.form-group textarea{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;transition:border-color .3s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group textarea{resize:vertical;min-height:120px}.faq{padding:80px 0;background-color:var(--white)}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}.faq-item{padding:32px;background:var(--bg-light);border-radius:12px;border-left:4px solid var(--primary-color)}.faq-item h3{font-size:20px;font-weight:600;margin-bottom:16px;color:var(--text-dark)}.faq-item p{color:var(--text-light);line-height:1.6}@media (max-width: 768px){.contact-hero-content h1{font-size:32px}.contact-hero-content p{font-size:18px}.contact-info-grid{grid-template-columns:1fr;gap:30px}.contact-form-container{padding:24px;margin:0 16px}.form-header h2{font-size:24px}.form-row{grid-template-columns:1fr;gap:16px}.faq-grid{grid-template-columns:1fr;gap:24px}.faq-item{padding:24px}}.dashboard-my-plants{max-width:1200px;margin:0 auto;padding:2rem}.my-plants-header{margin-bottom:2rem}.header-content h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem}.header-content p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem}.stat-card{background:var(--bg-secondary);padding:1.5rem;border-radius:12px;box-shadow:var(--shadow);display:flex;align-items:center;gap:1rem;border:1px solid var(--border-color)}.stat-icon{font-size:2rem;width:60px;height:60px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.stat-content h3{font-size:2rem;color:var(--text-primary);margin:0}.stat-content p{color:var(--text-secondary);margin:0}.plants-section{background:var(--bg-secondary);border-radius:12px;box-shadow:var(--shadow);padding:2rem;border:1px solid var(--border-color)}.load-more{text-align:center;padding:2rem 0}.btn{padding:.75rem 2rem;border:2px solid var(--primary-color);border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-outline{background:var(--bg-secondary);color:var(--primary-color)}.btn-outline:hover:not(:disabled){background:var(--primary-color);color:#fff}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:4rem 2rem;background:var(--bg-secondary);border-radius:12px;box-shadow:var(--shadow);max-width:500px;margin:0 auto;border:1px solid var(--border-color)}.empty-state h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem}.empty-state p{color:var(--text-secondary);margin-bottom:2rem;line-height:1.6;font-size:1.1rem}.empty-actions .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none}.empty-actions .btn:hover{background:var(--secondary-color);transform:translateY(-2px)}@media (max-width: 768px){.dashboard-my-plants{padding:1rem}.header-content h1{font-size:2rem}.plants-grid,.stats-cards{grid-template-columns:1fr}}.public-plants-container{max-width:1200px;margin:0 auto;padding:2rem}.public-plants-header{margin-bottom:2rem}.header-content h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem}.header-content p{font-size:1.1rem;color:#7f8c8d;margin-bottom:2rem}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;gap:1rem}.stat-icon{font-size:2rem;width:60px;height:60px;background:linear-gradient(135deg,#2ecc71,#27ae60);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.stat-content h3{font-size:2rem;color:#2c3e50;margin:0}.stat-content p{color:#7f8c8d;margin:0}.plants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:1rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;margin-bottom:2rem}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;max-width:500px;margin:0 auto}.empty-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.7}.empty-state h3{color:#2c3e50;margin-bottom:1rem;font-size:1.5rem}.empty-state p{color:#7f8c8d;margin-bottom:2rem;line-height:1.6;font-size:1.1rem}.empty-actions{margin-top:2rem}.empty-actions .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:#2ecc71;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none}.empty-actions .btn:hover{background:#27ae60;transform:translateY(-2px)}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.pagination-btn{background:#fff;border:2px solid #e9ecef;color:#2c3e50;padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.pagination-btn:hover:not(:disabled){border-color:#2ecc71;color:#2ecc71}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-pages{display:flex;gap:.5rem}.pagination-page{background:#fff;border:2px solid #e9ecef;color:#2c3e50;width:40px;height:40px;border-radius:6px;cursor:pointer;transition:all .3s ease}.pagination-page:hover{border-color:#2ecc71;color:#2ecc71}.pagination-page.active{background:#2ecc71;border-color:#2ecc71;color:#fff}@media (max-width: 768px){.public-plants-container{padding:1rem}.header-content h1{font-size:2rem}.plants-grid{grid-template-columns:1fr}.pagination{flex-direction:column;gap:1rem}.pagination-pages{order:-1}}.dashboard{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary);transition:background-color .3s ease}.dashboard.dark,.dashboard.light{background-color:var(--bg-primary)}.dashboard-header{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:1rem 0;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:300}.dashboard-header-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.dashboard-header-left{display:flex;align-items:center;gap:1rem}.dashboard-header-left h1{font-size:1.5rem;font-weight:600;margin:0}.dashboard-header-right{display:flex;align-items:center;gap:.75rem}.user-info{font-weight:500}.logout-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.25);color:#fff;padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:500;font-size:.9rem}.logout-btn:hover{background:#ffffff40;border-color:#fff6;transform:translateY(-1px)}.back-to-site-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.25);color:#fff;padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;transition:all .3s ease;text-decoration:none;display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500}.back-to-site-btn:hover{background:#ffffff40;border-color:#fff6;transform:translateY(-1px)}.sidebar-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;gap:4px}.sidebar-toggle span{width:25px;height:3px;background:#fff;border-radius:2px;transition:all .3s ease}.dashboard-sidebar{width:280px;background:var(--bg-secondary);box-shadow:2px 0 10px #0000001a;position:fixed;left:0;top:0;height:100vh;z-index:250;transform:translate(-100%);transition:all .3s ease;padding-top:80px;display:flex;flex-direction:column;border-right:1px solid var(--border-color)}.dashboard-sidebar.open{transform:translate(0)}.dashboard-sidebar.collapsed{width:80px}.sidebar-header{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:flex-end}.sidebar-collapse-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.sidebar-collapse-btn:hover{background:var(--primary-color);color:#fff}.dashboard-nav{padding:1.5rem;flex:1}.dashboard-nav a{display:flex;align-items:center;gap:1rem;padding:1.2rem 1.5rem;color:var(--text-primary);text-decoration:none;border-radius:12px;margin-bottom:.75rem;transition:all .3s ease;font-weight:500;font-size:1rem;border:2px solid transparent;white-space:nowrap}.dashboard-nav a:hover{background:var(--bg-tertiary);color:var(--primary-color);border-color:var(--border-color);transform:translate(5px)}.dashboard-nav a.active{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border-color:var(--primary-color);box-shadow:0 4px 15px #2ecc714d}.dashboard-nav i{width:24px;text-align:center;font-size:1.2rem;flex-shrink:0}.dashboard-sidebar.collapsed .dashboard-nav a{justify-content:center;padding:1.2rem .5rem}.dashboard-sidebar.collapsed .dashboard-nav a span{display:none}.dashboard-sidebar.collapsed .dashboard-nav a:hover{transform:translateY(-2px)}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-color)}.settings-sidebar-btn{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:12px;cursor:pointer;transition:all .3s ease;font-weight:500;font-size:1rem;text-decoration:none}.settings-sidebar-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-2px)}.settings-sidebar-btn i{width:24px;text-align:center;font-size:1.2rem;flex-shrink:0}.dashboard-sidebar.collapsed .settings-sidebar-btn{justify-content:center;padding:1rem .5rem}.dashboard-sidebar.collapsed .settings-sidebar-btn span{display:none}.dashboard-main{flex:1;margin-left:280px;padding:2rem;max-width:calc(100vw - 280px);transition:margin-left .3s ease,max-width .3s ease}.dashboard-main.sidebar-collapsed{margin-left:80px;max-width:calc(100vw - 80px)}.dashboard-home{max-width:800px;margin:0 auto}.dashboard-welcome{text-align:center;margin-bottom:3rem}.dashboard-welcome h2{font-size:2.5rem;color:var(--text-primary);margin-bottom:1rem}.dashboard-welcome p{font-size:1.2rem;color:var(--text-secondary)}.dashboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.dashboard-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:2rem;text-align:center;transition:all .3s ease;box-shadow:var(--shadow)}.dashboard-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.card-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;font-size:2rem}.card-icon i{font-size:2.5rem}.dashboard-card h3{font-size:1.5rem;color:var(--text-primary);margin-bottom:1rem}.dashboard-card p{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.card-link{display:inline-block;background:var(--primary-color);color:#fff;padding:.8rem 2rem;border-radius:8px;text-decoration:none;font-weight:500;transition:all .3s ease}.card-link:hover{background:var(--secondary-color);transform:translateY(-2px)}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:150}@media (max-width: 768px){.dashboard-header-content{padding:0 1rem}.dashboard-header-left h1{font-size:1.2rem}.dashboard-header-right{gap:.5rem}.back-to-site-btn{padding:.5rem .8rem;font-size:.8rem}.back-to-site-btn span{display:none}.logout-btn{padding:.5rem .8rem;font-size:.8rem}.sidebar-toggle{display:flex}.dashboard-sidebar{transform:translate(-100%);width:280px}.dashboard-sidebar.collapsed{width:280px}.sidebar-collapse-btn{display:none}.dashboard-nav{padding:1rem}.dashboard-nav a{padding:1rem 1.2rem;font-size:.95rem}.dashboard-nav a span{display:inline}.dashboard-nav i{width:20px;font-size:1.1rem}.settings-sidebar-btn span{display:inline}.dashboard-main{margin-left:0;max-width:100vw;padding:1rem}.dashboard-main.sidebar-collapsed{margin-left:0;max-width:100vw}.dashboard-cards{grid-template-columns:1fr}.dashboard-welcome h2{font-size:2rem}}@media (min-width: 769px){.dashboard-sidebar{transform:translate(0)}.sidebar-collapse-btn{display:flex}}.plant-details-container{max-width:1200px;margin:0 auto;padding:2rem}.plant-details-container.public{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.plant-details-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.header-left{display:flex;align-items:center;gap:1rem}.header-actions{display:flex;gap:.5rem}.back-arrow{display:flex;align-items:center;justify-content:center;background:#2c3e50;border:2px solid #2c3e50;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .3s ease;color:#fff;font-size:1.2rem;box-shadow:0 2px 8px #0003}.back-arrow:hover{background:#34495e;border-color:#34495e;color:#fff;transform:translate(-2px);box-shadow:0 4px 12px #2c3e5066}.plant-details-header h1{font-size:2rem;color:#2c3e50;margin:0}.plant-details-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.plant-gallery{position:sticky;top:2rem}.main-image-container{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;margin-bottom:1rem}.main-image{width:100%;height:400px;object-fit:cover;display:block}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#2c3e50;color:#fff;border:none;width:50px;height:50px;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .3s ease;z-index:10;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.5);box-shadow:0 4px 12px #00000080}.gallery-arrow:hover{background:#34495e;border-color:#fffc;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 16px #0009}.gallery-arrow.left{left:15px}.gallery-arrow.right{right:15px}.image-counter{position:absolute;bottom:15px;right:15px;background:#2c3e50;color:#fff;padding:.5rem .75rem;border-radius:15px;font-size:.9rem;font-weight:600;z-index:10;border:2px solid rgba(255,255,255,.5);box-shadow:0 4px 12px #00000080;min-width:fit-content;text-align:center}.image-thumbnails{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem 0}.thumbnail{width:80px;height:80px;object-fit:cover;border-radius:8px;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.thumbnail:hover{transform:scale(1.05)}.thumbnail.active{border-color:#2ecc71;transform:scale(1.05)}.plant-info-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 10px #0000001a}.plant-details-container.public .main-image-container{background:#fff}.plant-details-container.public .back-arrow{background:#2c3e50;border:2px solid #2c3e50;color:#fff;box-shadow:0 3px 10px #0000004d}.plant-details-container.public .back-arrow:hover{background:#34495e;border-color:#34495e;color:#fff;box-shadow:0 4px 15px #2c3e5080}.plant-details-container.public .qr-button{background:#2ecc71;border:2px solid #27ae60;box-shadow:0 3px 12px #2ecc7180}.plant-details-container.public .qr-button:hover{background:#27ae60;border-color:#2ecc71;box-shadow:0 5px 18px #2ecc7199}.plant-header{margin-bottom:1.5rem}.plant-title h2{font-size:2rem;color:#2c3e50;margin:0 0 .5rem}.scientific-name{font-style:italic;color:#7f8c8d;font-size:1.2rem;margin:0 0 1rem}.plant-visibility{margin-top:.25rem}.badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-public{background:#2ecc71;color:#fff}.badge-private{background:#e74c3c;color:#fff}.plant-description{margin-bottom:2rem}.plant-description h3{color:#2c3e50;margin-bottom:1rem;font-size:1.3rem}.plant-description p{color:#7f8c8d;line-height:1.6;font-size:1rem}.plant-details-grid{grid-template-columns:1fr;margin-bottom:2rem}.detail-item h4{color:#2c3e50;margin-bottom:.5rem;font-size:1rem;font-weight:600}.detail-item p{color:#7f8c8d;margin:0}.location-btn{display:inline-flex;align-items:center;gap:.5rem;background:#3498db;color:#fff;border:2px solid #2980b9;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #3498db4d}.location-btn:hover{background:#2980b9;border-color:#3498db;transform:translateY(-2px);box-shadow:0 4px 12px #3498db66}.botanical-characteristics{border-top:1px solid #e9ecef;padding-top:2rem}.botanical-characteristics h3{color:#2c3e50;margin-bottom:1.5rem;font-size:1.3rem}.characteristics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.characteristic-item{background:#f8f9fa;padding:1rem;border-radius:8px}.characteristic-item h4{color:#2c3e50;margin-bottom:.5rem;font-size:.9rem;font-weight:600}.characteristic-item p{color:#7f8c8d;margin:0;font-size:.9rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #2ecc71;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:2rem;border-radius:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.error-message i{font-size:2rem}.btn{padding:.75rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary{background:#2ecc71;color:#fff}.btn-primary:hover{background:#27ae60;transform:translateY(-2px)}@media (max-width: 768px){.plant-details-container{padding:1rem}.plant-details-content{grid-template-columns:1fr;gap:2rem}.plant-gallery{position:static}.main-image{height:300px}.plant-header{flex-direction:column;gap:1rem;align-items:flex-start}.plant-title h2{font-size:1.5rem}.plant-details-grid,.characteristics-grid{grid-template-columns:1fr}.gallery-arrow{width:40px;height:40px;font-size:1rem}.image-counter{padding:.25rem .75rem;font-size:.8rem}.plant-details-header{flex-direction:column;gap:1rem;align-items:flex-start}.header-actions{align-self:flex-end}}.qr-button{display:flex;align-items:center;gap:.5rem;background:#2ecc71;color:#fff;border:2px solid #27ae60;padding:.75rem 1.5rem;border-radius:25px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 10px #2ecc7166}.qr-button:hover{background:#27ae60;border-color:#2ecc71;transform:translateY(-2px);box-shadow:0 5px 15px #2ecc7180}.qr-button i{font-size:1rem}.qr-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.qr-modal-content{background:#fff;border-radius:16px;padding:2rem;max-width:400px;width:90%;text-align:center;box-shadow:0 10px 30px #0000004d;position:relative}.qr-modal-header{margin-bottom:1.5rem}.qr-modal-header h3{color:#2c3e50;margin:0 0 .5rem;font-size:1.5rem}.qr-modal-header p{color:#7f8c8d;margin:0;font-size:.9rem}.qr-code-container{margin:1.5rem 0;display:flex;justify-content:center}.qr-code-container canvas{border:1px solid #e9ecef;border-radius:8px;padding:1rem;background:#fff}.qr-modal-actions{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.qr-modal-actions button{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.qr-modal-actions .btn-secondary{background:#95a5a6;color:#fff}.qr-modal-actions .btn-secondary:hover{background:#7f8c8d}.qr-modal-actions .btn-primary{background:#2ecc71;color:#fff}.qr-modal-actions .btn-primary:hover{background:#27ae60}.close-modal{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;color:#7f8c8d;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .3s ease}.close-modal:hover{background:#f8f9fa;color:#2c3e50}@media (max-width: 480px){.qr-modal-content{padding:1.5rem;margin:1rem}.qr-modal-actions{flex-direction:column}.qr-modal-actions button{width:100%}}.cta-section{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff;padding:2rem;border-radius:12px;text-align:center;margin-top:2rem}.cta-section h3{margin-bottom:1rem;font-size:1.5rem}.cta-section p{margin-bottom:1.5rem;opacity:.9;line-height:1.6}.cta-buttons{display:flex;justify-content:center;gap:1rem}.cta-buttons .btn{background:#fff;color:#2ecc71}.cta-buttons .btn:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 4px 12px #ffffff4d}@media (max-width: 768px){.cta-buttons{flex-direction:column;align-items:center}}.lightbox-modal{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:#000000d9;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-image{max-width:80vw;max-height:80vh;border-radius:12px;box-shadow:0 8px 32px #00000080;background:#fff;object-fit:contain}.lightbox-close{position:absolute;top:16px;right:16px;background:#2c3e50e6;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:1.3rem;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:background .2s}.lightbox-close:hover{background:#2ecc71;color:#fff}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#2c3e50f2;color:#fff;border:none;width:48px;height:48px;border-radius:50%;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 8px #0006;transition:background .2s,box-shadow .2s}.lightbox-arrow.left{left:16px}.lightbox-arrow.right{right:16px}.lightbox-arrow:hover{background:#2ecc71;color:#fff;box-shadow:0 4px 16px #2ecc7166}.lightbox-arrow i{color:#fff;font-size:1.5rem;pointer-events:none}.lightbox-counter{position:absolute;bottom:24px;right:32px;background:#2c3e50e6;color:#fff;padding:.5rem 1rem;border-radius:16px;font-size:1rem;font-weight:600;z-index:10;box-shadow:0 2px 8px #0000004d}@media (max-width: 600px){.lightbox-content{max-width:98vw;max-height:98vh}.lightbox-image{max-width:95vw;max-height:60vh}.lightbox-arrow.left{left:2px}.lightbox-arrow.right{right:2px}.lightbox-counter{right:10px;bottom:10px;font-size:.9rem;padding:.4rem .7rem}.lightbox-close{top:6px;right:6px;width:34px;height:34px;font-size:1.1rem}}.image-not-found{width:100%;height:100%;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f8f9fa;border-radius:8px;border:1px dashed #ddd;box-sizing:border-box}.image-not-found-text{margin-top:.5rem;color:#888;font-size:1rem;text-align:center}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-color) 0%,#2f855a 100%);padding:20px}.reset-password-page .container{background:var(--white);border-radius:16px;padding:40px;max-width:500px;width:100%;text-align:center;box-shadow:var(--shadow-lg)}.logo{font-size:64px;margin-bottom:24px}.reset-password-page h1{font-size:32px;font-weight:700;color:var(--text-dark);margin-bottom:12px}.subtitle{font-size:18px;color:var(--text-light);margin-bottom:32px}.app-button{background:var(--primary-color);color:var(--white);border:none;border-radius:12px;padding:16px 24px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;width:100%;margin-bottom:24px}.app-button:hover{background:#2f855a;transform:translateY(-2px)}.divider{position:relative;text-align:center;margin:32px 0}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color)}.divider span{background:var(--white);padding:0 16px;color:var(--text-light);font-size:14px}.web-form h3{font-size:24px;font-weight:600;color:var(--text-dark);margin-bottom:24px}.submit-btn{background:var(--primary-color);color:var(--white);border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;width:100%;margin-top:8px}.submit-btn:hover:not(:disabled){background:#2f855a}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.loading{display:flex;flex-direction:column;align-items:center;margin-top:20px}.loading p{margin-top:12px;color:var(--text-light)}.back-link{margin-top:32px}.back-link a{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .3s ease}.back-link a:hover{color:#2f855a}@media (max-width: 480px){.reset-password-page .container{padding:24px}.reset-password-page h1{font-size:24px}.subtitle{font-size:16px}.logo{font-size:48px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color .3s ease,color .3s ease}:root{--primary-color: #38a169;--secondary-color: #3182ce;--text-primary: #2d3748;--text-secondary: #718096;--bg-primary: #f7fafc;--bg-secondary: #ffffff;--bg-tertiary: #edf2f7;--border-color: #e2e8f0;--border-light: #f1f5f9;--shadow: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--white: #ffffff;--text-dark: #2d3748;--text-light: #718096;--bg-light: #f7fafc}[data-theme=dark]{--primary-color: #4ade80;--secondary-color: #60a5fa;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--border-color: #475569;--border-light: #334155;--shadow: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .3);--white: #1e293b;--text-dark: #f1f5f9;--text-light: #94a3b8;--bg-light: #0f172a}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border:none;border-radius:8px;font-size:16px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .3s ease;min-height:40px}.btn-primary{background-color:var(--primary-color);color:var(--white)}.btn-primary:hover{background-color:#2f855a;transform:translateY(-2px)}.btn-outline{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:var(--white)}.btn-large{padding:16px 32px;font-size:18px}.btn-full{width:100%}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-primary)}.form-group input{width:100%;padding:10px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;transition:border-color .3s ease;background-color:var(--bg-secondary);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--primary-color)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000;align-items:center;justify-content:center}.modal.show{display:flex}.modal-content{background-color:var(--bg-secondary);border-radius:12px;padding:24px;max-width:400px;width:90%;position:relative;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);z-index:1001}.close{position:absolute;top:16px;right:16px;font-size:24px;cursor:pointer;color:var(--text-secondary)}.close:hover{color:var(--text-primary)}.loading-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:2000;align-items:center;justify-content:center}.loading-overlay.show{display:flex}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.message.success{background-color:#c6f6d5;color:#22543d;border:1px solid #9ae6b4}.message.error{background-color:#fed7d7;color:#742a2a;border:1px solid #feb2b2}@media (max-width: 768px){.container{padding:0 16px}.modal-content{padding:24px;margin:20px}.btn{padding:10px 20px;font-size:14px}.btn-large{padding:14px 28px;font-size:16px}}
