@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Playfair+Display:wght@400;500;600;700&display=swap";:root{--color-primary: #1B6B2E;--color-primary-light: #2E8B47;--color-primary-dark: #0D3B18;--color-secondary: #6BCB77;--color-accent: #4CAF6A;--color-background: #F0F4F1;--color-surface: #FFFFFF;--color-surface-glass: rgba(255, 255, 255, .85);--color-surface-glass-strong: rgba(255, 255, 255, .92);--color-scrim: rgba(13, 59, 24, .6);--color-scrim-heavy: rgba(13, 59, 24, .75);--color-text: #1A1A1A;--color-text-light: #4A5A4E;--color-text-lighter: #5A6A5E;--color-text-on-dark: #FFFFFF;--color-text-on-dark-muted: rgba(255, 255, 255, .8);--color-success: #22C55E;--color-warning: #F59E0B;--color-danger: #EF4444;--color-info: #3B82F6;--color-border: #E5E5E5;--color-border-glass: rgba(255, 255, 255, .3);--color-shadow: rgba(0, 0, 0, .1);--color-shadow-lg: rgba(0, 0, 0, .15);--color-glow-primary: rgba(27, 107, 46, .4);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--navbar-height: 64px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--border-radius: 12px;--border-radius-sm: 8px;--border-radius-lg: 20px;--border-radius-xl: 24px;--transition: .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--border-radius-pill: 100px;--page-padding: var(--spacing-md)}[data-theme=dark]{--color-background: #0F1A12;--color-surface: #1A2A1E;--color-surface-glass: rgba(26, 42, 30, .85);--color-surface-glass-strong: rgba(26, 42, 30, .92);--color-scrim: rgba(0, 0, 0, .7);--color-scrim-heavy: rgba(0, 0, 0, .85);--color-text: #E8F0EA;--color-text-light: #A8B8AC;--color-text-lighter: #8A9A8E;--color-border: #2A3A2E;--color-border-glass: rgba(107, 203, 119, .15);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-lg: rgba(0, 0, 0, .4);--color-primary: #2E8B47;--color-primary-dark: #1B6B2E;--color-primary-light: #3DA858;--color-secondary: #7DD889;--color-accent: #5CC07A;color-scheme:dark}[data-theme=dark] body{background-color:var(--color-background);color:var(--color-text)}[data-theme=dark] .glass-panel,[data-theme=dark] .glass-panel-minimal{background:var(--color-surface-glass);border-color:var(--color-border-glass)}[data-theme=dark] .input,[data-theme=dark] .select,[data-theme=dark] textarea{background:#ffffff14;border-color:#3a4a3e;color:var(--color-text)}[data-theme=dark] .input::placeholder,[data-theme=dark] textarea::placeholder{color:#6a7a6e}[data-theme=dark] .btn-outline{border-color:var(--color-border);color:var(--color-text-light)}[data-theme=dark] .navbar-mobile{background:#0f1a12eb;border-top-color:var(--color-border-glass)}[data-theme=dark] .navbar-desktop{background:#0f1a12eb;border-bottom-color:var(--color-border-glass)}[data-theme=dark] .navbar-brand-name{color:var(--color-primary)}[data-theme=dark] .navbar-desktop-username,[data-theme=dark] .page-header{color:var(--color-text)}[data-theme=dark] .page-header p{color:var(--color-text-light)}[data-theme=dark] .section-header h2{color:var(--color-text)}[data-theme=dark] .form-group label{color:var(--color-text-light)}[data-theme=dark] .input-help{color:var(--color-text-lighter)}[data-theme=dark] .checkbox-group label{color:var(--color-text-light)}[data-theme=dark] .bg-dashboard{background-color:var(--color-background)}[data-theme=dark] .sort-dropdown{background:#1a2a1eeb;color:#e8f0ea}[data-theme=dark] .sort-dropdown label{color:#e8f0ea}[data-theme=dark] .sort-dropdown .select{background-color:#1a2a1e;color:#e8f0ea;border-color:#2a3a2e}[data-theme=dark] .filter-chip{color:#e8f0ea;background:#1a2a1ed9;border-color:#6bcb7726}[data-theme=dark] .results-controls{color:#e8f0ea}@media (prefers-color-scheme: dark){[data-theme=system]{--color-background: #0F1A12;--color-surface: #1A2A1E;--color-surface-glass: rgba(26, 42, 30, .85);--color-surface-glass-strong: rgba(26, 42, 30, .92);--color-scrim: rgba(0, 0, 0, .7);--color-scrim-heavy: rgba(0, 0, 0, .85);--color-text: #E8F0EA;--color-text-light: #A8B8AC;--color-text-lighter: #8A9A8E;--color-border: #2A3A2E;--color-border-glass: rgba(107, 203, 119, .15);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-lg: rgba(0, 0, 0, .4);--color-primary: #2E8B47;--color-primary-dark: #1B6B2E;--color-primary-light: #3DA858;--color-secondary: #7DD889;--color-accent: #5CC07A;color-scheme:dark}[data-theme=system] body{background-color:var(--color-background);color:var(--color-text)}[data-theme=system] .glass-panel,[data-theme=system] .glass-panel-minimal{background:var(--color-surface-glass);border-color:var(--color-border-glass)}[data-theme=system] .input,[data-theme=system] .select,[data-theme=system] textarea{background:#ffffff14;border-color:#3a4a3e;color:var(--color-text)}[data-theme=system] .input::placeholder,[data-theme=system] textarea::placeholder{color:#6a7a6e}[data-theme=system] .btn-outline{border-color:var(--color-border);color:var(--color-text-light)}[data-theme=system] .navbar-mobile{background:#0f1a12eb;border-top-color:var(--color-border-glass)}[data-theme=system] .navbar-desktop{background:#0f1a12eb;border-bottom-color:var(--color-border-glass)}[data-theme=system] .navbar-brand-name{color:var(--color-primary)}[data-theme=system] .navbar-desktop-username,[data-theme=system] .page-header{color:var(--color-text)}[data-theme=system] .page-header p{color:var(--color-text-light)}[data-theme=system] .section-header h2{color:var(--color-text)}[data-theme=system] .form-group label{color:var(--color-text-light)}[data-theme=system] .input-help{color:var(--color-text-lighter)}[data-theme=system] .checkbox-group label{color:var(--color-text-light)}[data-theme=system] .bg-dashboard{background-color:var(--color-background)}[data-theme=system] .stat-slider-row{border-bottom-color:#ffffff0f}[data-theme=system] .stat-option-btn{background:#ffffff14;border-color:#ffffff26;color:var(--color-text)}[data-theme=system] .stat-option-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}[data-theme=system] .pref-chip{background:#ffffff14;border-color:#ffffff26;color:var(--color-text)}[data-theme=system] .pref-chip-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}[data-theme=system] .pref-chip:hover{border-color:var(--color-primary);background:#4ade8026}[data-theme=system] .stat-range-input{background:#ffffff1a}[data-theme=system] .sr-section-help{color:#8a9a8e}[data-theme=system] .sr-confidence-pill{background:#4ade8033}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;scroll-behavior:smooth}*,*:before,*:after{-webkit-tap-highlight-color:transparent}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;color:var(--color-text);background-color:var(--color-background);line-height:1.6;overflow-x:hidden;font-weight:400}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.app-container{flex:1;display:flex;flex-direction:column;padding-bottom:calc(var(--navbar-height) + var(--safe-area-bottom))}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-primary-dark);margin-bottom:var(--spacing-md);letter-spacing:-.02em}h1{font-size:3rem;font-family:Playfair Display,serif;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.5rem;font-weight:600}h4{font-size:1.25rem;font-weight:600}h5{font-size:1.125rem;font-weight:600}h6{font-size:1rem;font-weight:600}p{margin-bottom:var(--spacing-md);line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-light)}.glass-panel{background:var(--color-surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-lg);box-shadow:0 8px 32px #0000001a}.glass-panel-strong{background:var(--color-surface-glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-lg);box-shadow:0 12px 40px #00000026}.glass-card{background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius);box-shadow:0 4px 24px #00000014}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;font-weight:600;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition);min-height:48px;text-decoration:none;position:relative;overflow:hidden;font-family:Inter,sans-serif;letter-spacing:.01em}.btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .6s;pointer-events:none}.btn:hover:before{transform:translate(100%)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);color:#fff;box-shadow:0 4px 16px var(--color-glow-primary)}.btn-primary:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 24px var(--color-glow-primary)}.btn-primary:active:not(:disabled){transform:translateY(-1px)}.btn-secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-accent) 100%);color:#fff;box-shadow:0 4px 16px #6bcb774d}.btn-secondary:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 24px #6bcb7766}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none}.btn-outline:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px var(--color-glow-primary)}.btn-glass{background:var(--color-surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--color-primary-dark);border:1px solid var(--color-border-glass);box-shadow:0 4px 20px #0000001a}.btn-glass:hover:not(:disabled){background:var(--color-surface-glass-strong);transform:translateY(-2px);box-shadow:0 8px 32px #00000026}.btn-text{background-color:transparent;color:var(--color-primary);padding:var(--spacing-xs) var(--spacing-sm);box-shadow:none}.btn-text:hover:not(:disabled){text-decoration:underline;background:#1b6b2e0d}.btn-danger{background:linear-gradient(135deg,var(--color-danger) 0%,#DC2626 100%);color:#fff;box-shadow:0 4px 16px #ef44444d}.btn-danger:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 24px #ef444466}.btn-icon{min-width:48px;min-height:48px;padding:var(--spacing-sm);background-color:transparent;border:none;color:var(--color-text);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.btn-icon:before{display:none}.btn-icon:hover:not(:disabled){background-color:var(--color-background);transform:scale(1.1)}.btn-small{font-size:.875rem;min-height:40px;padding:var(--spacing-sm) var(--spacing-lg)}.btn-large{font-size:1.125rem;min-height:56px;padding:var(--spacing-lg) var(--spacing-2xl);border-radius:999px}.btn-full-width{width:100%}.input,.select,textarea{width:100%;padding:var(--spacing-md);font-size:1rem;font-family:Inter,sans-serif;border:2px solid #C8CFC9;border-radius:var(--border-radius);background-color:#f7f9f7;color:var(--color-text);transition:all var(--transition);min-height:48px}.input::placeholder,textarea::placeholder{color:#8a9a8e}.input:focus,.select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-glow-primary)}.input:disabled,.select:disabled,textarea:disabled{background-color:var(--color-background);cursor:not-allowed;opacity:.6}textarea{min-height:120px;resize:vertical;line-height:1.6}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon svg{position:absolute;left:var(--spacing-md);color:#5a6a5e;pointer-events:none;z-index:1}.input-with-icon input{padding-left:calc(var(--spacing-md) * 3)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text);font-size:.9375rem}.input-help{font-size:.875rem;color:var(--color-text-light);margin-top:var(--spacing-xs);margin-bottom:0;line-height:1.5}.checkbox-group{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.checkbox-group input[type=checkbox]{width:20px;height:20px;min-height:unset;cursor:pointer;accent-color:var(--color-primary)}.checkbox-group label{margin:0;cursor:pointer;font-weight:400}.checkbox-list{display:flex;flex-direction:column;gap:var(--spacing-md)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes leafSpin{0%{transform:rotate(0);opacity:.6}50%{transform:rotate(180deg);opacity:1}to{transform:rotate(360deg);opacity:.6}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes checkmark{0%{transform:scale(0) rotate(45deg)}to{transform:scale(1) rotate(0)}}@keyframes float-leaf{0%,to{transform:translateY(0) rotate(0);opacity:.3}50%{transform:translateY(-30px) rotate(180deg);opacity:.7}}.empty-state h2{color:#fff;margin-bottom:var(--spacing-sm);text-shadow:0 2px 8px rgba(0,0,0,.3)}.empty-state p{color:var(--color-text-on-dark-muted);margin-bottom:var(--spacing-xl);text-shadow:0 2px 8px rgba(0,0,0,.3);font-size:1.0625rem}@media (min-width: 640px){:root{--navbar-height: 72px}.btn-large{font-size:1.25rem;min-height:64px}}@media (min-width: 1024px){.fab{bottom:var(--spacing-xl)}}@media print{.navbar,.fab,.btn,.save-button,.auth-page:before,.auth-page:after{display:none!important}.app-container{padding:0}body{background:#fff}.analysis-page:before,.analysis-page:after,.results-page:before,.results-page:after,.my-spaces-page:before,.my-spaces-page:after,.my-plants-page:before,.my-plants-page:after,.profile-page:before,.profile-page:after{display:none}.glass-panel,.glass-panel-strong,.glass-card,.analysis-section,.space-summary,.form-section{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--color-border)}.page-header-with-back button,.btn-danger-ghost,.bulk-buy-section,.ftc-disclosure{display:none!important}.shopping-list-page{background:#fff!important;padding:0!important}.shopping-plant-item{break-inside:avoid}}.navbar-desktop{display:none}.navbar-mobile{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--color-border-glass);padding-bottom:var(--safe-area-bottom);z-index:100;box-shadow:0 -4px 24px #00000014}.navbar-content{display:flex;justify-content:space-around;align-items:center;height:var(--navbar-height);max-width:600px;margin:0 auto}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--spacing-sm) var(--spacing-md);min-width:60px;color:var(--color-text-light);transition:all var(--transition);text-decoration:none;border-radius:var(--border-radius-sm);position:relative}.nav-item:hover{color:var(--color-primary);background:#1b6b2e0d}.nav-item.active{color:var(--color-primary);background:linear-gradient(135deg,#1b6b2e1a,#2e8b471a)}.nav-item.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:32px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));border-radius:0 0 3px 3px}.nav-label{font-size:.75rem;font-weight:600;letter-spacing:.02em}.navbar-desktop-inner{display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:0 auto;padding:0 2rem;height:64px}.navbar-brand{display:flex;align-items:center;gap:.625rem;text-decoration:none;flex-shrink:0}.navbar-brand-logo{width:36px;height:36px;object-fit:contain}.navbar-brand-name{font-family:Playfair Display,serif;font-size:1.375rem;font-weight:700;color:var(--color-primary);letter-spacing:-.01em}.navbar-desktop-links{display:flex;align-items:center;gap:.5rem}.navbar-desktop-link{padding:.5rem 1.125rem;font-size:.9375rem;font-weight:500;color:var(--color-text-light);text-decoration:none;border-radius:6px;transition:color .2s,background .2s;position:relative;letter-spacing:.01em;white-space:nowrap}.navbar-desktop-link:hover{color:var(--color-primary);background:#1b6b2e0f}.navbar-desktop-link.active{color:var(--color-primary);font-weight:600}.navbar-desktop-link.active:after{content:"";position:absolute;bottom:0;left:1.125rem;right:1.125rem;height:2px;background:var(--color-primary);border-radius:2px}.navbar-desktop-right{display:flex;align-items:center;flex-shrink:0}.navbar-desktop-profile{display:flex;align-items:center;gap:.625rem;padding:.375rem .75rem .375rem .375rem;text-decoration:none;border-radius:999px;transition:all .2s;border:1px solid transparent}.navbar-desktop-profile:hover{background:#1b6b2e0f;border-color:var(--color-border-glass)}.navbar-desktop-profile.active{background:#1b6b2e14;border-color:#1b6b2e33}.navbar-desktop-profile .nav-avatar{width:32px;height:32px}.navbar-desktop-username{font-size:.875rem;font-weight:500;color:var(--color-text);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navbar-desktop-signin{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.loading-screen,.error-screen,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);min-height:60vh;text-align:center;animation:fadeIn .5s ease}.spinner{width:48px;height:48px;border:4px solid rgba(27,107,46,.1);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.spinner-small{width:20px;height:20px;border-width:2px}.spinner-leaf{width:48px;height:48px;color:var(--color-primary);animation:leafSpin 2s ease-in-out infinite}.error-message,.success-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius);margin-bottom:var(--spacing-md);font-weight:500;animation:fadeInUp .4s ease}.error-message{background:#ef44441a;color:var(--color-danger);border:1px solid rgba(239,68,68,.3)}.success-message{background:#22c55e1a;color:var(--color-success);border:1px solid rgba(34,197,94,.3)}.landing-page{position:relative;min-height:100vh}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md);overflow:hidden;background-color:#0d3b18;background-image:linear-gradient(#0d3b18bf,#0d3b18bf),url(/rprp/images/bg-hero.png);background-size:cover;background-position:center;background-repeat:no-repeat}.hero-content{position:relative;z-index:1;text-align:center;max-width:700px;color:#fff;animation:fadeInUp .8s ease}.hero-logo{margin-bottom:var(--spacing-xl);animation:float 3s ease-in-out infinite}.hero-logo-img{width:180px;height:180px;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.4));border:none;border-radius:0;background:none}.hero-icon{margin-bottom:var(--spacing-xl);animation:pulse 2s ease-in-out infinite;filter:drop-shadow(0 4px 16px rgba(255,255,255,.3))}.hero-title{font-size:3rem;font-family:Playfair Display,serif;margin-bottom:var(--spacing-sm);color:#fff;letter-spacing:-.02em;text-shadow:0 4px 16px rgba(0,0,0,.3);line-height:1.1}.hero-tagline{font-size:1.125rem;color:var(--color-text-on-dark-muted);font-style:italic;margin-bottom:var(--spacing-lg);letter-spacing:.03em;text-shadow:0 2px 8px rgba(0,0,0,.3)}.hero-subtitle{font-size:1.25rem;margin-bottom:var(--spacing-3xl);color:var(--color-text-on-dark-muted);line-height:1.6;text-shadow:0 2px 8px rgba(0,0,0,.3)}.step-logo-icon{width:48px;height:48px;object-fit:contain}.footer-logo{width:56px;height:56px;object-fit:contain;border:none;border-radius:0;background:none}.auth-logo-img{width:100px;height:100px;object-fit:contain;border:none;border-radius:0;background:none}.hero-actions{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:450px;margin:0 auto}.features-section{position:relative;padding:var(--spacing-3xl) var(--spacing-md);min-height:100vh;background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-features.png);background-size:cover;background-position:center;background-repeat:no-repeat}.how-it-works-section{padding:var(--spacing-3xl) var(--spacing-md);background:var(--color-background)}.section-title{text-align:center;font-size:2.5rem;font-family:Playfair Display,serif;margin-bottom:var(--spacing-md);animation:fadeInUp .6s ease}.features-section .section-title,.features-section .section-subtitle{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.3)}.section-subtitle{text-align:center;color:var(--color-text-light);font-size:1.125rem;margin-bottom:var(--spacing-3xl);max-width:700px;margin-left:auto;margin-right:auto;line-height:1.7}.features-section .section-subtitle{color:var(--color-text-on-dark-muted)}.features-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1100px;margin:0 auto}.feature-card{background:var(--color-surface-glass-strong);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:var(--spacing-2xl);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-glass);box-shadow:0 8px 32px #0000001f;text-align:center;transition:all var(--transition);animation:fadeInUp .6s ease;animation-fill-mode:both}.feature-card:nth-child(1){animation-delay:.1s}.feature-card:nth-child(2){animation-delay:.2s}.feature-card:nth-child(3){animation-delay:.3s}.feature-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #00000026;border-color:#ffffff80}.feature-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px var(--color-glow-primary)}.feature-card h3{font-size:1.5rem;margin-bottom:var(--spacing-md);color:var(--color-primary)}.feature-card p{color:var(--color-text-light);line-height:1.7;margin-bottom:0}.steps-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1100px;margin:0 auto var(--spacing-3xl)}.step{position:relative;background:var(--color-surface);padding:var(--spacing-2xl);border-radius:var(--border-radius-xl);box-shadow:0 4px 24px var(--color-shadow);text-align:center;animation:fadeInUp .6s ease;animation-fill-mode:both}.step:nth-child(1){animation-delay:.1s}.step:nth-child(2){animation-delay:.2s}.step:nth-child(3){animation-delay:.3s}.step-number{position:absolute;top:-20px;left:50%;transform:translate(-50%);width:56px;height:56px;background:linear-gradient(135deg,var(--color-accent),var(--color-secondary));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700;box-shadow:0 6px 20px #6bcb7766}.step-icon{margin:var(--spacing-lg) auto;color:var(--color-primary)}.step h3{font-size:1.5rem;margin-bottom:var(--spacing-md)}.step p{color:var(--color-text-light);line-height:1.7;margin-bottom:0}.cta-container{text-align:center;animation:fadeInUp .8s ease}.landing-footer{background:var(--color-primary-dark);color:#fff;padding:var(--spacing-3xl) var(--spacing-md);margin-top:var(--spacing-3xl)}.footer-content{max-width:1100px;margin:0 auto;text-align:center}.footer-brand{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);font-size:1.75rem;font-weight:700;margin-bottom:var(--spacing-xl);font-family:Playfair Display,serif}.footer-disclaimer{margin-bottom:var(--spacing-xl);opacity:.9;font-size:.9375rem;line-height:1.6;max-width:800px;margin-left:auto;margin-right:auto}.footer-links{display:flex;justify-content:center;gap:var(--spacing-xl);flex-wrap:wrap}.footer-links a{color:#fff;opacity:.8;transition:all var(--transition);font-weight:500}.footer-links a:hover{opacity:1;text-decoration:underline}.analysis-page{position:relative;min-height:100vh;min-height:100dvh;padding:var(--spacing-md) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-garden.png);background-size:cover;background-position:center;background-repeat:no-repeat}.analysis-page .page-header{text-align:center;margin-bottom:var(--spacing-md);color:#fff;animation:fadeInUp .6s ease}.analysis-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif}.analysis-page .page-header p{color:var(--color-text-on-dark-muted);font-size:1.125rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.analysis-section{padding:var(--spacing-md) 0;margin-bottom:0;max-width:800px;margin-left:auto;margin-right:auto;animation:fadeInUp .8s ease;border-bottom:1px solid var(--color-border-glass)}.analysis-section:last-child{border-bottom:none;padding-bottom:0}.section-help{color:var(--color-text-light);margin-bottom:var(--spacing-sm);line-height:1.5;font-size:.875rem}.location-confirmed{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:var(--border-radius);color:var(--color-success);font-weight:500}.location-input{display:flex;flex-direction:column;gap:var(--spacing-sm)}.divider{display:flex;align-items:center;gap:var(--spacing-md);color:var(--color-text-light);font-weight:500;margin:var(--spacing-xs) 0;font-size:.875rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.analysis-note{text-align:center;color:var(--color-text-on-dark-muted);font-size:.875rem;margin-top:var(--spacing-lg);font-style:italic;line-height:1.6;text-shadow:0 1px 4px rgba(0,0,0,.2)}.photo-capture{width:100%}.photo-capture-empty{border:3px dashed var(--color-text-lighter);border-radius:var(--border-radius-lg);padding:var(--spacing-lg) var(--spacing-md);text-align:center;transition:all var(--transition);background:var(--color-surface-glass-strong)}.photo-capture-empty:hover{border-color:var(--color-primary);background:var(--color-surface-glass);transform:scale(1.01)}.capture-icon{margin:0 auto var(--spacing-lg);color:var(--color-primary)}.capture-buttons{display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:400px;margin:var(--spacing-md) auto 0}.capture-btn{width:100%}.capture-hint{margin-top:var(--spacing-lg);color:var(--color-text-light);font-size:.875rem;line-height:1.6}.photo-preview{background:var(--color-surface);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:0 4px 24px #0000001a}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-background)}.preview-header h3{margin:0;font-size:1.125rem}.preview-image{width:100%;max-height:400px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--color-text)}.preview-image img{width:100%;height:auto;display:block}.preview-status{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:.875rem;font-weight:500}.preview-status.success{color:var(--color-success);background:#22c55e1a}.preview-status.no-gps,.preview-status.error{color:var(--color-warning);background:#f59e0b1a}.preview-status.processing,.preview-status.extracting{color:var(--color-info);background:#3b82f61a}.preview-error{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);color:var(--color-danger);background:#ef44441a;font-size:.875rem;font-weight:500}.analysis-progress{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary));display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:var(--spacing-lg) var(--spacing-md);overflow-y:auto;-webkit-overflow-scrolling:touch}.progress-container{max-width:390px;width:100%;text-align:center;color:#fff;padding-top:var(--spacing-xl);padding-bottom:var(--spacing-2xl)}.progress-header h2{color:#fff;font-size:1.5rem;font-family:Playfair Display,serif;margin-bottom:var(--spacing-md);text-shadow:0 2px 12px rgba(0,0,0,.3)}.progress-metrics{margin-bottom:var(--spacing-md)}.progress-meta-row{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm)}.progress-percent{font-size:.875rem;font-weight:700;color:var(--color-secondary)}.progress-timer{display:flex;align-items:center;gap:4px;font-size:.8125rem;color:var(--color-text-on-dark-muted);font-variant-numeric:tabular-nums}.patience-phrase{color:var(--color-text-on-dark-muted);font-size:.875rem;line-height:1.5;margin-bottom:var(--spacing-lg);min-height:2.6em;font-style:italic}.progress-stages-compact{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);text-align:left}.stage-row{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);transition:all var(--transition-fast);flex-wrap:wrap}.stage-row.active{background:#ffffff1f}.stage-row.complete{opacity:.65}.stage-row.pending{opacity:.35}.stage-indicator{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin-top:1px}.stage-check{color:var(--color-success);animation:checkmark .3s ease}.stage-spinner-sm{animation:spin 1s linear infinite;color:#fff;display:flex;align-items:center;justify-content:center}.stage-pending-icon{opacity:.4}.stage-text{font-size:.9375rem;font-weight:500;line-height:1.5}.stage-detail{width:100%;font-size:.8125rem;color:var(--color-text-on-dark-muted);padding-left:32px;margin-top:-2px}.progress-error{background:#ef444433;border:1px solid rgba(239,68,68,.4);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.progress-error p{color:#fff;font-weight:600;margin:0 0 var(--spacing-xs)}.progress-error-detail{font-weight:400!important;font-size:.875rem;color:var(--color-text-on-dark-muted)!important}.tip-card{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:var(--border-radius);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:left;min-height:90px;align-items:flex-start;transition:opacity .4s ease}.tip-fade-in{opacity:1}.tip-fade-out{opacity:0}.tip-icon-wrap{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff26;border-radius:50%;color:var(--color-secondary)}.tip-content{flex:1;min-width:0}.tip-label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-secondary);margin-bottom:4px}.tip-text{font-size:.875rem;line-height:1.5;color:var(--color-text-on-dark-muted);margin:0}.tip-counter{margin-top:var(--spacing-sm);font-size:.75rem;color:#ffffff59}.results-page{position:relative;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-results.png);background-size:cover;background-position:center;background-repeat:no-repeat}.results-page .page-header{text-align:center;margin-bottom:var(--spacing-xl);color:#fff;animation:fadeInUp .6s ease}.results-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif}.results-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);color:#fff}.results-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}.space-summary{background:var(--color-surface-glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-glass);box-shadow:0 12px 48px #00000026;overflow:hidden;margin-bottom:var(--spacing-xl);max-width:900px;margin-left:auto;margin-right:auto;animation:fadeInUp .8s ease}.summary-image{width:100%;height:240px;overflow:hidden;position:relative}.summary-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.3))}.summary-image img{width:100%;height:100%;object-fit:cover}.summary-content{padding:var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg)}.summary-main h2{margin-bottom:var(--spacing-sm);font-size:1.75rem}.summary-details{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.detail-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-light);font-size:.875rem;font-weight:500}.auth-prompt{padding:var(--spacing-lg);background:#ffffff0d;text-align:center;border-top:1px solid var(--color-border-glass);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.auth-prompt p{margin-bottom:var(--spacing-md);color:var(--color-text-light)}.save-analysis-btn{margin:var(--spacing-lg);width:calc(100% - var(--spacing-2xl))}.results-controls{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);max-width:900px;margin-left:auto;margin-right:auto;color:var(--color-text)}.filters{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding-bottom:var(--spacing-sm);-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-primary) transparent}.filters::-webkit-scrollbar{height:6px}.filters::-webkit-scrollbar-track{background:transparent}.filters::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:3px}.filter-chip{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-surface-glass-strong);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:2px solid var(--color-border-glass);border-radius:999px;font-size:.875rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:all var(--transition);color:var(--color-text)}.filter-chip:hover{border-color:var(--color-primary);background:var(--color-surface-glass-strong);transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.filter-chip.active{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:#fff;border-color:transparent;box-shadow:0 4px 16px var(--color-glow-primary)}.sort-dropdown{display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-surface-glass-strong);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-border-glass);color:var(--color-text)}.sort-dropdown label{font-weight:600;white-space:nowrap;font-size:.9375rem;color:var(--color-text)}.sort-dropdown .select{background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);min-height:40px;padding:var(--spacing-xs) var(--spacing-md)}.results-count{text-align:center;color:#fff;font-size:.9375rem;font-weight:500;margin-bottom:var(--spacing-lg);text-shadow:0 2px 8px rgba(0,0,0,.3)}.plants-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-3xl);max-width:900px;margin-left:auto;margin-right:auto}.no-results{text-align:center;padding:var(--spacing-3xl);background:var(--color-surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-glass);animation:fadeIn .5s ease}.no-results h3{color:var(--color-text);margin-bottom:var(--spacing-md)}.no-results p{color:var(--color-text-light);margin-bottom:0}.plant-card{background:var(--color-surface-glass-strong);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-xl);box-shadow:0 8px 32px #0000001f;overflow:hidden;transition:all var(--transition);cursor:pointer;animation:fadeInUp .5s ease;animation-fill-mode:both}.plant-card:nth-child(1){animation-delay:.05s}.plant-card:nth-child(2){animation-delay:.1s}.plant-card:nth-child(3){animation-delay:.15s}.plant-card:nth-child(4){animation-delay:.2s}.plant-card:nth-child(5){animation-delay:.25s}.plant-card:nth-child(6){animation-delay:.3s}.plant-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px #0000002e;border-color:#ffffff80}.plant-card-image{position:relative;width:100%;height:220px;overflow:hidden}.plant-card-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.4));pointer-events:none}.plant-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.plant-card:hover .plant-card-image img{transform:scale(1.05)}.match-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:#fff;border-radius:50%;padding:var(--spacing-sm);box-shadow:0 4px 16px #0003;z-index:1}.save-button{position:absolute;bottom:var(--spacing-md);right:var(--spacing-md);width:48px;height:48px;background:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-danger);box-shadow:0 4px 16px #0003;transition:all var(--transition);z-index:1}.save-button:hover{transform:scale(1.15);box-shadow:0 6px 24px #0000004d}.save-button.saved{background:var(--color-danger);color:#fff;animation:pulse .5s ease}.plant-card-content{padding:var(--spacing-lg) var(--spacing-xl);background:var(--color-surface)}.plant-card-header{margin-bottom:var(--spacing-md)}.plant-name{font-size:1.375rem;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--color-text)}.plant-scientific{font-style:italic;color:var(--color-text-light);font-size:.9375rem;margin-bottom:var(--spacing-md)}.plant-traits{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin:var(--spacing-md) 0}.trait-badge{display:flex;align-items:center;gap:4px;padding:6px var(--spacing-md);border-radius:999px;font-size:.8125rem;font-weight:600}.trait-badge.success{color:var(--color-success);background:#22c55e1a;border:1px solid rgba(34,197,94,.2)}.trait-badge.info{color:var(--color-info);background:#3b82f61a;border:1px solid rgba(59,130,246,.2)}.trait-badge.warning{color:var(--color-warning);background:#f59e0b1a;border:1px solid rgba(245,158,11,.2)}.trait-badge.accent{color:var(--color-accent);background:#4caf6a1a;border:1px solid rgba(76,175,106,.2)}.trait-badge.primary{color:var(--color-primary);background:#1b6b2e1a;border:1px solid rgba(27,107,46,.2)}.plant-description{color:var(--color-text-light);font-size:.9375rem;line-height:1.6;margin-bottom:var(--spacing-md)}.plant-card-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.plant-conditions{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.condition{display:flex;align-items:center;gap:4px;color:var(--color-text-light);font-size:.8125rem;font-weight:500}.details-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:2px solid var(--color-primary);border-radius:var(--border-radius);color:var(--color-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.details-button:hover{background:var(--color-primary);color:#fff;transform:translate(4px);box-shadow:0 4px 12px var(--color-glow-primary)}.safety-badge,.safety-badges-group{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:6px var(--spacing-md);border-radius:999px;font-size:.8125rem;font-weight:600;position:relative;border:1px solid transparent}.safety-badge.safe{background:#22c55e1a;color:var(--color-success);border-color:#22c55e33}.safety-badge.warning{background:#f59e0b1a;color:var(--color-warning);border-color:#f59e0b33}.safety-badge.caution{background:#f973161a;color:#f97316;border-color:#f9731633}.safety-badge.danger{background:#ef44441a;color:var(--color-danger);border-color:#ef444433}.safety-badge.unknown{background:#9ca3af1a;color:var(--color-text-light);border-color:#9ca3af33}.safety-badge.medium{padding:var(--spacing-sm) var(--spacing-lg);font-size:.9375rem}.safety-badge.icon-only{padding:var(--spacing-sm)}.safety-badges-group{gap:var(--spacing-xs);padding:0;background:transparent;border:none}.safety-tooltip{position:absolute;bottom:calc(100% + var(--spacing-sm));left:50%;transform:translate(-50%);background:var(--color-text);color:#fff;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);font-size:.8125rem;white-space:nowrap;z-index:10;box-shadow:0 4px 16px #0000004d;pointer-events:none}.safety-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--color-text)}.confidence-meter{display:flex;align-items:center;gap:var(--spacing-sm)}.confidence-meter.ring{position:relative;display:flex;align-items:center;justify-content:center}.confidence-text{position:absolute;display:flex;flex-direction:column;align-items:center;text-align:center}.confidence-text .percentage{font-size:1.75rem;font-weight:700;color:var(--color-primary);line-height:1}.confidence-text .label{font-size:.75rem;color:var(--color-text-light);font-weight:500;margin-top:2px}.confidence-bar-container{flex:1;height:10px;background:#1b6b2e1a;border-radius:999px;overflow:hidden;border:1px solid rgba(27,107,46,.2)}.confidence-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));border-radius:999px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px var(--color-glow-primary)}.confidence-label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.9375rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text)}.confidence-value{font-weight:700;color:var(--color-primary)}.plant-detail-page{position:relative;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-results.png);background-size:cover;background-position:center;background-repeat:no-repeat}.detail-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);max-width:900px;margin:0 auto}.detail-header .btn-icon{background:var(--color-surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border-glass);color:var(--color-text)}.detail-hero{position:relative;width:100%;max-width:900px;height:400px;margin:0 auto var(--spacing-xl);border-radius:var(--border-radius-xl);overflow:hidden;box-shadow:0 16px 48px #0003}.hero-image{width:100%;height:100%;object-fit:cover}.hero-match{position:absolute;bottom:var(--spacing-lg);right:var(--spacing-lg);background:#fff;border-radius:50%;padding:var(--spacing-md);box-shadow:0 8px 24px #0000004d}.detail-content{padding:0 var(--spacing-md) var(--spacing-3xl);max-width:900px;margin:0 auto}.plant-header{text-align:center;margin-bottom:var(--spacing-2xl);padding:var(--spacing-2xl);background:var(--color-surface-glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-glass);box-shadow:0 8px 32px #0000001f}.plant-header h1{font-family:Playfair Display,serif;font-size:2.5rem;margin-bottom:var(--spacing-sm)}.scientific-name{font-style:italic;color:var(--color-text-light);font-size:1.25rem;margin-bottom:0}.match-explanation{display:flex;gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--border-radius-lg);border-left:4px solid var(--color-primary);margin-bottom:var(--spacing-xl);box-shadow:0 4px 24px #00000014}.match-explanation p{margin-bottom:0;line-height:1.7;color:var(--color-text)}.detail-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-2xl);background:var(--color-surface-glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-glass);box-shadow:0 8px 32px #0000001f}.detail-section h2{font-size:1.75rem;margin-bottom:var(--spacing-lg);font-family:Playfair Display,serif}.safety-info{display:flex;flex-direction:column;gap:var(--spacing-md)}.safety-warning{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--border-radius);color:var(--color-warning);font-size:.9375rem;font-weight:500;line-height:1.6}.conditions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.condition-card{padding:var(--spacing-xl);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);text-align:center;transition:all var(--transition)}.condition-card:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.condition-card svg{color:var(--color-primary);margin-bottom:var(--spacing-sm);width:32px;height:32px}.condition-card h3{font-size:1.125rem;margin-bottom:var(--spacing-xs)}.condition-card p{color:var(--color-text-light);font-size:.9375rem;margin:0;line-height:1.5}.description{line-height:1.8;color:var(--color-text);font-size:1.0625rem}.care-instructions{display:flex;flex-direction:column;gap:var(--spacing-md)}.care-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);transition:all var(--transition)}.care-item:hover{border-color:var(--color-primary);box-shadow:0 4px 16px #0000000f}.care-item svg{color:var(--color-primary);flex-shrink:0;margin-top:4px;width:28px;height:28px}.care-item h4{font-size:1.125rem;margin-bottom:var(--spacing-xs)}.care-item p{color:var(--color-text-light);font-size:.9375rem;margin:0;line-height:1.6}.features-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.feature-badge{padding:var(--spacing-sm) var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:#fff;border-radius:999px;font-size:.9375rem;font-weight:600;box-shadow:0 2px 8px var(--color-glow-primary)}.companions-scroll{display:flex;gap:var(--spacing-lg);overflow-x:auto;padding-bottom:var(--spacing-md);-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-primary) transparent}.companions-scroll::-webkit-scrollbar{height:8px}.companions-scroll::-webkit-scrollbar-track{background:transparent}.companions-scroll::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:4px}.companions-scroll .plant-card{min-width:320px}.buy-links{display:flex;flex-direction:column;gap:var(--spacing-md)}.buy-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);color:var(--color-primary);font-weight:600;transition:all var(--transition)}.buy-link:hover{border-color:var(--color-primary);background:var(--color-primary);color:#fff;transform:translate(6px);box-shadow:0 4px 16px var(--color-glow-primary)}.detail-actions{margin-top:var(--spacing-2xl)}.my-spaces-page{position:relative;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-dashboard.png);background-size:cover;background-position:center;background-repeat:no-repeat}.my-spaces-page .page-header{text-align:center;margin-bottom:var(--spacing-xl);color:#fff}.my-spaces-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif}.my-spaces-page .page-header p{color:var(--color-text-on-dark-muted);text-shadow:0 2px 8px rgba(0,0,0,.3)}.spaces-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-3xl);max-width:900px;margin-left:auto;margin-right:auto}.space-card{background:var(--color-surface-glass-strong);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-xl);box-shadow:0 8px 32px #0000001f;overflow:hidden;cursor:pointer;transition:all var(--transition);animation:fadeInUp .5s ease;animation-fill-mode:both}.space-card:nth-child(1){animation-delay:.05s}.space-card:nth-child(2){animation-delay:.1s}.space-card:nth-child(3){animation-delay:.15s}.space-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px #0000002e;border-color:#ffffff80}.space-image{position:relative;width:100%;height:200px;overflow:hidden}.space-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.space-card:hover .space-image img{transform:scale(1.05)}.space-type-badge{position:absolute;top:var(--spacing-md);left:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:999px;font-size:.8125rem;font-weight:600;color:var(--color-primary);box-shadow:0 2px 8px #00000026}.space-content{padding:var(--spacing-xl);background:var(--color-surface)}.space-content h3{font-size:1.375rem;margin-bottom:var(--spacing-md)}.space-info{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.info-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-light);font-size:.875rem;font-weight:500}.space-stats{margin-bottom:var(--spacing-sm)}.stat{font-size:.9375rem;color:var(--color-primary);font-weight:600}.space-location{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-light);font-size:.8125rem;font-weight:500}.space-actions{padding:0 var(--spacing-xl) var(--spacing-xl);display:flex;justify-content:flex-end;background:var(--color-surface)}.my-plants-page{position:relative;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-dashboard.png);background-size:cover;background-position:center;background-repeat:no-repeat}.my-plants-page .page-header{text-align:center;margin-bottom:var(--spacing-xl);color:#fff}.my-plants-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif}.my-plants-page .page-header p{color:var(--color-text-on-dark-muted);text-shadow:0 2px 8px rgba(0,0,0,.3)}.plants-list{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-bottom:var(--spacing-3xl);max-width:900px;margin-left:auto;margin-right:auto}.my-plant-card{background:var(--color-surface-glass-strong);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-xl);box-shadow:0 8px 32px #0000001f;overflow:hidden;animation:fadeInUp .5s ease;animation-fill-mode:both}.my-plant-card:nth-child(1){animation-delay:.05s}.my-plant-card:nth-child(2){animation-delay:.1s}.my-plant-card:nth-child(3){animation-delay:.15s}.my-plant-card .plant-image{width:100%;height:180px;overflow:hidden;cursor:pointer;position:relative}.my-plant-card .plant-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50px;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.3))}.my-plant-card .plant-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.my-plant-card:hover .plant-image img{transform:scale(1.05)}.my-plant-card .plant-info{padding:var(--spacing-xl);cursor:pointer;background:var(--color-surface)}.my-plant-card .plant-info h3{margin-bottom:var(--spacing-xs);font-size:1.375rem}.my-plant-card .scientific{font-style:italic;color:var(--color-text-light);font-size:.9375rem;margin-bottom:var(--spacing-md)}.care-status{display:flex;flex-direction:column;gap:var(--spacing-sm)}.status-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-light);font-size:.875rem;font-weight:500}.status-item.streak{color:var(--color-success);font-weight:600}.plant-actions{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--color-border);background:#f0f4f180}.action-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--spacing-md);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.action-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.action-btn.water:hover:not(:disabled){border-color:var(--color-info);color:var(--color-info)}.action-btn.fertilize:hover:not(:disabled){border-color:var(--color-success);color:var(--color-success)}.action-btn.note:hover:not(:disabled){border-color:var(--color-warning);color:var(--color-warning)}.action-btn.delete:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}.profile-page{position:relative;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-dashboard.png);background-size:cover;background-position:center;background-repeat:no-repeat}.profile-page .page-header{text-align:center;margin-bottom:var(--spacing-xl);color:#fff}.profile-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif}.profile-page .page-header p{color:var(--color-text-on-dark-muted);text-shadow:0 2px 8px rgba(0,0,0,.3)}.profile-form{max-width:700px;margin:0 auto}.form-section{background:var(--color-surface-glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:var(--spacing-2xl);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-glass);box-shadow:0 12px 48px #00000026;margin-bottom:var(--spacing-xl);animation:fadeInUp .6s ease;animation-fill-mode:both}.form-section:nth-child(1){animation-delay:.1s}.form-section:nth-child(2){animation-delay:.2s}.form-section:nth-child(3){animation-delay:.3s}.section-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.section-header h2{margin:0;color:var(--color-primary-dark);font-size:1.5rem}.form-actions{display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-summary-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);max-width:700px;margin:0 auto var(--spacing-md);animation:fadeInUp .4s ease both}.profile-summary-avatar{position:relative;flex-shrink:0}.profile-avatar-img{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid rgba(27,107,46,.4);box-shadow:0 4px 16px #0003}.profile-avatar-initials{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#1b6b2e,#2d8a4e);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;letter-spacing:1px;border:3px solid rgba(27,107,46,.4)}.profile-premium-badge{position:absolute;bottom:2px;right:2px;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid white;box-shadow:0 2px 6px #0000004d}.profile-summary-info{flex:1;min-width:0}.profile-summary-name{font-size:1.4rem;font-weight:700;color:#1a2e1a;margin:0 0 4px;font-family:Playfair Display,serif}.profile-summary-email{font-size:.85rem;color:#5a6a5e;margin:0 0 6px;word-break:break-all}.profile-summary-since{font-size:.8rem;color:#5a6a5e;margin:0;display:flex;align-items:center;gap:4px}.profile-subscription-tag{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:999px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;margin-top:6px}.profile-logout-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:700px;margin:0 auto var(--spacing-lg);padding:10px 16px;background:#b91c1c14;border:1px solid rgba(185,28,28,.2);border-radius:var(--border-radius-sm);color:#dc2626;font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.profile-logout-btn:hover{background:#b91c1c26;border-color:#b91c1c66}.profile-quick-actions{display:flex;gap:var(--spacing-sm);max-width:700px;margin:0 auto var(--spacing-lg);animation:fadeInUp .4s ease .1s both}.profile-quick-action{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:var(--spacing-md) var(--spacing-sm);cursor:pointer;transition:all var(--transition);position:relative;text-align:center}.profile-quick-action:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.pqa-icon{width:44px;height:44px;border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:center}.pqa-label{font-size:.78rem;font-weight:600;color:#1a2e1a}.pqa-badge{position:absolute;top:6px;right:6px;min-width:20px;height:20px;padding:0 6px;background:#1b6b2e;color:#fff;font-size:.7rem;font-weight:700;border-radius:999px;display:flex;align-items:center;justify-content:center}.profile-settings-section{max-width:700px;margin:0 auto var(--spacing-sm);padding:0;overflow:hidden;animation:fadeInUp .4s ease .2s both}.profile-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;cursor:pointer;color:#1a2e1a;font-size:.95rem;font-weight:600;transition:background var(--transition)}.profile-section-toggle:hover{background:#1b6b2e0a}.profile-section-toggle-left{display:flex;align-items:center;gap:var(--spacing-sm)}.profile-section-body{padding:0 var(--spacing-lg) var(--spacing-lg);border-top:1px solid var(--color-border)}.profile-section-body .form-group{margin-bottom:var(--spacing-md)}.profile-section-body .form-group:last-child{margin-bottom:0}.auth-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b18bf,#0d3b18bf),url(/rprp/images/bg-hero.png);background-size:cover;background-position:center;background-repeat:no-repeat}.auth-container{width:100%;max-width:500px;background:var(--color-surface-glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-xl);box-shadow:0 20px 60px #0000004d;padding:var(--spacing-3xl);animation:fadeInUp .8s ease}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-icon{display:inline-flex;margin-bottom:var(--spacing-lg);align-items:center;justify-content:center;background:none;border:none;padding:0}.auth-icon .auth-logo-img{filter:none}.auth-header h1{margin-bottom:var(--spacing-sm);font-family:Playfair Display,serif;color:var(--color-primary-dark)}.auth-header p{color:var(--color-text-light);margin-bottom:0;font-size:1.0625rem}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.auth-divider{display:flex;align-items:center;gap:var(--spacing-md);color:var(--color-text-light);font-size:.9375rem;font-weight:500;margin:var(--spacing-md) 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.google-btn{position:relative;background:#fff!important;color:var(--color-text)!important;border:2px solid var(--color-border)!important}.google-btn svg{position:absolute;left:var(--spacing-lg)}.google-btn:hover{border-color:var(--color-primary)!important}.auth-footer{text-align:center;color:var(--color-text-light);font-size:.9375rem;margin-top:var(--spacing-lg)}.auth-footer a{color:var(--color-primary);font-weight:600;text-decoration:underline}.fab{position:fixed;bottom:calc(var(--navbar-height) + var(--spacing-xl) + var(--safe-area-bottom));right:var(--spacing-xl);width:64px;height:64px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:#fff;border:none;border-radius:50%;box-shadow:0 8px 24px var(--color-glow-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition);z-index:50}.fab:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 12px 32px var(--color-glow-primary)}.empty-state .empty-icon{color:var(--color-text-light);margin-bottom:var(--spacing-xl);width:80px;height:80px}.empty-state h2{color:var(--color-text);margin-bottom:var(--spacing-sm)}.empty-state p{color:var(--color-text-light);margin-bottom:var(--spacing-xl);font-size:1.0625rem}.page-header{margin-bottom:var(--spacing-xl);text-align:center}.page-header h1{font-family:Playfair Display,serif;font-size:2.5rem;margin-bottom:var(--spacing-sm)}.page-header p{font-size:1.125rem;line-height:1.6}.glass-panel-minimal{background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:var(--border-radius-lg);padding:var(--spacing-lg)}.glass-overlay{background:var(--color-surface-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-xl);box-shadow:0 16px 48px #0003;padding:var(--spacing-3xl)}.logo-glow{filter:drop-shadow(0 4px 16px var(--color-glow-primary));transition:filter var(--transition)}.logo-glow:hover{filter:drop-shadow(0 6px 24px var(--color-glow-primary))}.header-with-shadow h1,.header-with-shadow p{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}.step-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:#fff;border-radius:50%;font-size:.85rem;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px var(--color-glow-primary)}.step-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.step-header h2{margin-bottom:0;font-size:1.125rem}.btn-prominent{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:#fff;font-size:1.125rem;min-height:56px;border-radius:var(--border-radius-lg);box-shadow:0 8px 24px var(--color-glow-primary);transition:all var(--transition)}.btn-prominent:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 32px var(--color-glow-primary)}.btn-extra-large{font-size:1.25rem;min-height:60px;padding:var(--spacing-lg) var(--spacing-2xl);border-radius:var(--border-radius-lg)}.scroll-indicator{margin-top:var(--spacing-2xl);animation:bounce 2s ease infinite;opacity:.7;color:#fff}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-12px)}60%{transform:translateY(-6px)}}.analysis-container{max-width:600px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-md)}.analysis-container .photo-capture-empty{padding:var(--spacing-lg) var(--spacing-md)}.analysis-container .capture-buttons{max-width:100%}.page-subtitle{color:var(--color-text-on-dark-muted);text-shadow:0 2px 8px rgba(0,0,0,.3);font-size:1.125rem}.how-it-works{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:var(--border-radius);text-align:center}.how-it-works-text{color:var(--color-text-on-dark-muted);font-size:.9375rem;line-height:1.6;margin:0}.help-icon{vertical-align:-2px;margin-right:4px;color:var(--color-secondary)}.analysis-progress-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/rprp/images/bg-hero.png);background-size:cover;background-position:center;opacity:.15;z-index:0}.progress-logo{margin-bottom:var(--spacing-lg)}.progress-logo-img{width:80px;height:80px;object-fit:contain;filter:drop-shadow(0 4px 16px rgba(0,0,0,.3));animation:float 3s ease-in-out infinite}.progress-bar-track{width:100%;height:6px;background:#fff3;border-radius:999px;margin-bottom:var(--spacing-2xl);overflow:hidden}.progress-bar-thick{height:14px;border-radius:7px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-secondary),var(--color-success));border-radius:999px;transition:width .5s ease;box-shadow:0 0 12px #22c55e80}.progress-bar-shimmer{background:linear-gradient(90deg,#1b6b2e,#2d8a4e 30%,#4ade80,#2d8a4e 70%,#1b6b2e);background-size:200% 100%;animation:shimmer 2s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.analysis-photo-bg{position:fixed;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:blur(20px) brightness(.3);z-index:-2}.insight-message{text-align:center;color:#ffffffd9;font-size:.9rem;font-style:italic;margin-bottom:var(--spacing-lg);min-height:1.5em;transition:opacity .3s ease}.insight-fade-in{opacity:1}.insight-fade-out{opacity:0}.stage-sublabel{display:block;font-size:.875rem;color:var(--color-text-on-dark-muted);margin-top:2px;font-weight:400}.stage-connector{display:none}.stats-bar{background:linear-gradient(135deg,#0d3b18,#1b6b2e,#0d3b18);padding:var(--spacing-xl) var(--spacing-md)}.stats-row{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);max-width:800px;margin:0 auto;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:80px}.stat-number{font-size:1.8rem;font-weight:800;color:#4ade80;font-family:Inter,sans-serif;line-height:1.2}.stat-label{font-size:.75rem;color:#ffffffb3;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-divider{width:1px;height:32px;background:#ffffff26}.steps-connected{position:relative}.step-card{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);position:relative}.step-number-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#1b6b2e,#2d8a4e);color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #1b6b2e4d}.step-icon-large{color:var(--color-primary);margin-bottom:var(--spacing-md)}.step-connector{display:none;align-items:center;justify-content:center;color:var(--color-primary);opacity:.4}@media (min-width: 768px){.steps-connected{display:flex;align-items:stretch;gap:var(--spacing-sm)}.step-card{flex:1}.step-connector{display:flex;flex-shrink:0}}.features-grid-4{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media (min-width: 600px){.features-grid-4{grid-template-columns:repeat(2,1fr)}}.feature-card-new{padding:var(--spacing-xl);transition:all .3s ease;border:1px solid transparent}.feature-card-new:hover{transform:translateY(-4px);box-shadow:0 12px 36px #0000001f;border-color:#1b6b2e33}.feature-card-new h3{color:var(--color-text);font-size:1.1rem;margin-bottom:var(--spacing-sm)}.feature-card-new p{color:var(--color-text-light);font-size:.9rem;line-height:1.6}.feature-icon-gradient{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#1b6b2e,#2d8a4e);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md)}.comparison-section{padding:var(--spacing-3xl) var(--spacing-md);background:var(--color-background)}.comparison-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);max-width:800px;margin:0 auto}@media (min-width: 600px){.comparison-grid{grid-template-columns:1fr 1fr}}.comparison-col{padding:var(--spacing-xl)}.comparison-header{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.1rem;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid}.comparison-header-bad{color:#dc2626;border-color:#dc262633}.comparison-header-good{color:#16a34a;border-color:#16a34a33}.comparison-list{list-style:none;padding:0;margin:0}.comparison-list li{padding:var(--spacing-sm) 0;font-size:.9rem;color:var(--color-text-light);border-bottom:1px solid var(--color-border);line-height:1.5}.comparison-list li:last-child{border-bottom:none}.comparison-bad .comparison-list li:before{content:"✗";color:#dc2626;margin-right:6px}.comparison-good .comparison-list li:before{content:"✓";color:#16a34a;margin-right:6px}.roadmap-section{padding:var(--spacing-3xl) var(--spacing-md);background-color:#0d3b18;background-image:linear-gradient(#0d3b18d9,#0d3b18d9),url(/rprp/images/bg-features.png);background-size:cover;background-position:center}.roadmap-section .section-title,.roadmap-section .section-subtitle{color:#fff}.roadmap-timeline{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);max-width:800px;margin:0 auto}@media (min-width: 768px){.roadmap-timeline{grid-template-columns:repeat(3,1fr)}}.roadmap-item{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);position:relative}.roadmap-quarter{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:.7rem;font-weight:700;padding:2px 12px;border-radius:999px;letter-spacing:.5px}.roadmap-icon{color:var(--color-secondary);margin-bottom:var(--spacing-md);margin-top:var(--spacing-sm)}.roadmap-item h3{color:var(--color-text);font-size:1.05rem;margin-bottom:var(--spacing-sm)}.roadmap-item p{color:var(--color-text-light);font-size:.85rem;line-height:1.5}.roadmap-section .roadmap-item h3{color:#fff}.roadmap-section .roadmap-item p{color:#ffffffbf}.section-subtitle{text-align:center;color:var(--color-text-light);font-size:1rem;margin-bottom:var(--spacing-2xl);max-width:600px;margin-left:auto;margin-right:auto}.social-proof-section{padding:var(--spacing-3xl) var(--spacing-md);background:var(--color-background)}.social-proof-section .section-title{color:var(--color-text)}.testimonials-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1100px;margin:0 auto}.testimonial-card{background:var(--color-surface);padding:var(--spacing-2xl);border-radius:var(--border-radius-xl);box-shadow:0 4px 24px var(--color-shadow);text-align:center;transition:all var(--transition);animation:fadeInUp .6s ease;animation-fill-mode:both}.testimonial-card:nth-child(1){animation-delay:.1s}.testimonial-card:nth-child(2){animation-delay:.2s}.testimonial-card:nth-child(3){animation-delay:.3s}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001f}.testimonial-stars{display:flex;justify-content:center;gap:2px;color:#f59e0b;margin-bottom:var(--spacing-lg)}.testimonial-quote{font-size:1.125rem;line-height:1.7;color:var(--color-text);font-style:italic;margin-bottom:var(--spacing-lg);quotes:none}.testimonial-author{font-size:.9375rem;font-weight:600;color:var(--color-primary);font-style:normal}.final-cta-section{position:relative;padding:var(--spacing-3xl) var(--spacing-md);min-height:60vh;display:flex;align-items:center;justify-content:center;background-color:#0d3b18;background-image:linear-gradient(#0d3b18bf,#0d3b18bf),url(/rprp/images/bg-garden.png);background-size:cover;background-position:center;background-repeat:no-repeat}.final-cta-content{position:relative;z-index:1;text-align:center;max-width:700px;width:100%}.final-cta-panel{padding:var(--spacing-3xl) var(--spacing-xl)}.final-cta-title{font-size:2.5rem;font-family:Playfair Display,serif;color:var(--color-text);margin-bottom:var(--spacing-lg);line-height:1.2}.final-cta-subtitle{font-size:1.25rem;color:var(--color-text-light);margin-bottom:var(--spacing-2xl);line-height:1.6}.landing-footer .footer-content{display:grid;grid-template-columns:1fr;gap:var(--spacing-2xl);text-align:left;max-width:1100px;margin:0 auto var(--spacing-2xl)}.footer-column{display:flex;flex-direction:column}.footer-brand-column .footer-brand{justify-content:flex-start;margin-bottom:var(--spacing-md)}.footer-brand-name{font-family:Playfair Display,serif}.footer-description{color:#fffc;font-size:.9375rem;line-height:1.6;margin:0}.footer-column-title{font-size:1.125rem;font-weight:700;margin-bottom:var(--spacing-lg);color:#fff}.footer-nav{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-nav a{color:#fffc;font-size:.9375rem;transition:all var(--transition)}.footer-nav a:hover{color:#fff;text-decoration:underline}.footer-contact{display:flex;flex-direction:column;gap:var(--spacing-md)}.footer-contact a{color:#fffc;font-size:.9375rem;transition:all var(--transition)}.footer-contact a:hover{color:#fff}.footer-social-links{display:flex;gap:var(--spacing-lg)}.footer-social-links a{color:#ffffffb3;font-size:.875rem;transition:all var(--transition)}.footer-social-links a:hover{color:#fff}.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-xl);border-top:1px solid rgba(255,255,255,.15)}.footer-legal-links{display:flex;align-items:center;gap:var(--spacing-md)}.footer-legal-links a{color:#fff9;font-size:.8125rem;transition:color var(--transition)}.footer-legal-links a:hover{color:#fff}.footer-separator{color:#ffffff4d}.footer-copyright{color:#ffffff80;font-size:.8125rem}.summary-image-tall{height:280px}.summary-confidence-prominent{flex-shrink:0}.analysis-description{color:var(--color-text-light);font-size:.9375rem;line-height:1.6;margin-bottom:var(--spacing-md)}.reanalyze-section{display:flex;align-items:flex-start;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-xl);max-width:900px;margin:0 auto var(--spacing-2xl);color:var(--color-text)}.reanalyze-section svg{flex-shrink:0;margin-top:2px;color:var(--color-primary)}.reanalyze-content{flex:1}.reanalyze-content h3{color:var(--color-text);font-size:1.125rem;margin-bottom:var(--spacing-xs)}.reanalyze-content p{color:var(--color-text-light);font-size:.9375rem;line-height:1.5;margin-bottom:0}.results-header .btn-icon{color:#fff;background:#ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.results-header .btn-icon:hover{background:#ffffff40}@media (min-width: 640px){:root{--navbar-height: 72px}.hero-title{font-size:4rem}.hero-subtitle{font-size:1.375rem}.hero-actions{flex-direction:row}.features-grid,.steps-grid{grid-template-columns:repeat(3,1fr)}.plants-grid,.spaces-grid{grid-template-columns:repeat(2,1fr)}.conditions-grid{grid-template-columns:repeat(4,1fr)}.form-actions{flex-direction:row}.btn-large{font-size:1.25rem;min-height:64px}.trust-stats{grid-template-columns:repeat(4,1fr)}.testimonials-grid{grid-template-columns:repeat(3,1fr)}.landing-footer .footer-content{grid-template-columns:2fr 1fr 1fr}.footer-bottom{flex-direction:row;justify-content:space-between}.final-cta-title{font-size:3rem}}@media (min-width: 1024px){.navbar-mobile{display:none}.navbar-desktop{display:block;position:fixed;top:0;left:0;right:0;background:var(--color-surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--color-border-glass);box-shadow:0 1px 12px #0000000f;z-index:100}.app-container{padding-top:64px;padding-bottom:0}.fab{bottom:var(--spacing-xl)}.plants-grid{grid-template-columns:repeat(3,1fr)}.hero-title{font-size:4.5rem}.section-title{font-size:3rem}.detail-hero{height:500px}}@media print{.navbar,.fab,.btn,.save-button,.app-container{padding:0}body{background:#fff}.analysis-page,.results-page,.my-spaces-page,.my-plants-page,.profile-page,.auth-page,.onboarding-page,.plant-detail-page,.plant-health-page,.calendar-page{background-image:none!important;background-color:#fff!important}.glass-panel,.glass-panel-strong,.glass-card,.analysis-section,.space-summary,.form-section{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--color-border)}}.notes-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-md);background:#1b6b2e14;border:2px solid rgba(27,107,46,.25);border-radius:var(--border-radius-sm);color:var(--color-primary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.notes-toggle:hover{background:#1b6b2e1a}.notes-section{margin-top:var(--spacing-sm)}.notes-textarea{width:100%;min-height:80px;resize:vertical;font-family:inherit;font-size:.9rem;line-height:1.5;padding:var(--spacing-md);border:2px solid #C8CFC9;border-radius:var(--border-radius-sm);background:#f7f9f7;color:var(--color-text);transition:border-color var(--transition)}.notes-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1b6b2e1a}.notes-textarea::placeholder{color:var(--color-text-lighter)}.notes-counter{text-align:right;font-size:.75rem;color:var(--color-text-lighter);margin-top:var(--spacing-xs)}.results-logo{width:56px;height:56px;object-fit:contain;border:none;border-radius:0;background:none}.where-to-buy{display:flex;flex-direction:column;gap:var(--spacing-md)}.where-to-buy-loading{display:flex;justify-content:center;padding:var(--spacing-lg)}.ftc-disclosure{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#3b82f60f;border:1px solid rgba(59,130,246,.15);border-radius:var(--border-radius-sm);font-size:.75rem;color:var(--color-text-light);line-height:1.4}.ftc-disclosure svg{flex-shrink:0;margin-top:1px;color:var(--color-info)}.retailer-links{display:flex;flex-direction:column;gap:var(--spacing-sm)}.retailer-link{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface-glass);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);color:var(--color-text);text-decoration:none;font-weight:500;font-size:.95rem;transition:all var(--transition)}.retailer-link:hover{background:#1b6b2e0d;border-color:var(--color-primary);color:var(--color-primary);transform:translate(4px)}.retailer-link svg{flex-shrink:0;color:var(--color-text-lighter);transition:color var(--transition)}.retailer-link:hover svg{color:var(--color-primary)}.retailer-name{font-weight:600}.shopping-list-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface-glass);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);color:var(--color-text-light);cursor:pointer;font-size:.85rem;font-weight:500;transition:all var(--transition)}.shopping-list-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#1b6b2e0d}.shopping-list-btn.in-list{background:#22c55e1a;border-color:var(--color-success);color:var(--color-success)}.shopping-list-btn.large{padding:var(--spacing-md) var(--spacing-lg);width:100%;justify-content:center;font-size:.95rem;border-radius:var(--border-radius)}.shopping-list-page{min-height:100vh;min-height:100dvh;padding:var(--spacing-lg) var(--spacing-md);padding-bottom:calc(var(--navbar-height) + var(--spacing-2xl) + var(--safe-area-bottom));background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-dashboard.png);background-size:cover;background-position:center;background-repeat:no-repeat}.page-header-with-back{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.page-header-with-back h1{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}.page-header-with-back .btn-icon{color:#fff}.shopping-plants{margin-bottom:var(--spacing-lg)}.shopping-plants-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.shopping-plants-header h2{font-size:1.1rem;font-weight:600}.shopping-plant-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.shopping-plant-item:last-child{border-bottom:none}.shopping-plant-thumb{width:56px;height:56px;border-radius:var(--border-radius-sm);object-fit:cover;cursor:pointer;flex-shrink:0}.shopping-plant-info{flex:1;min-width:0;cursor:pointer}.shopping-plant-info h3{font-size:.95rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shopping-plant-info p{font-size:.8rem;color:var(--color-text-lighter);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-danger-ghost{background:none;border:1px solid transparent;color:var(--color-text-lighter);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);transition:all var(--transition)}.btn-danger-ghost:hover{background:#ef44441a;color:var(--color-danger);border-color:#ef444433}.bulk-buy-section{margin-top:var(--spacing-lg)}.bulk-buy-section h2{font-size:1.1rem;font-weight:600;margin-bottom:var(--spacing-md)}.nav-icon-wrapper{position:relative;display:inline-flex}.nav-badge{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;background:var(--color-danger);color:#fff;font-size:.65rem;font-weight:700;border-radius:999px;display:flex;align-items:center;justify-content:center;line-height:1}.nav-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.nav-avatar-initials{width:100%;height:100%;background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:50%;letter-spacing:.02em}.my-garden-page{position:relative;min-height:100vh;padding-bottom:calc(var(--navbar-height) + var(--safe-area-bottom) + var(--spacing-xl));background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-dashboard.png);background-size:cover;background-position:center;background-repeat:no-repeat}.my-garden-page .page-header{text-align:center;padding:var(--spacing-xl) var(--spacing-md) var(--spacing-sm);color:#fff}.my-garden-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif}.my-garden-page .page-header p{color:#fffc;text-shadow:0 2px 8px rgba(0,0,0,.3)}.garden-tabs{display:flex;gap:0;margin:var(--spacing-md) var(--spacing-md) 0;background:var(--color-surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:var(--border-radius) var(--border-radius) 0 0;overflow:hidden;border:1px solid var(--color-border-glass);border-bottom:none}.garden-tab{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;font-family:inherit;font-size:.95rem;font-weight:500;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);transition:all var(--transition);position:relative}.garden-tab.active{color:var(--color-primary);background:var(--color-surface-glass);font-weight:600}.garden-tab.active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:3px;background:var(--color-primary);border-radius:3px 3px 0 0}.garden-tab-content{margin:0 var(--spacing-md) var(--spacing-md)}.garden-tab-content .glass-panel{border-radius:0 0 var(--border-radius) var(--border-radius)}.profile-shopping-section{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);cursor:pointer;transition:background var(--transition)}.profile-shopping-section:hover{background:#1b6b2e0d}.profile-shopping-left{display:flex;align-items:center;gap:var(--spacing-md)}.profile-shopping-icon{width:40px;height:40px;border-radius:var(--border-radius-sm);background:var(--color-secondary);color:#fff;display:flex;align-items:center;justify-content:center}.profile-shopping-info h3{font-size:1rem;margin-bottom:2px}.profile-shopping-info p{font-size:.85rem;color:var(--color-text-light);margin:0}.profile-shopping-badge{min-width:24px;height:24px;padding:0 8px;background:var(--color-primary);color:#fff;font-size:.8rem;font-weight:700;border-radius:999px;display:flex;align-items:center;justify-content:center}.google-linked-badge{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#4285f40f;border:1px solid rgba(66,133,244,.2);border-radius:var(--border-radius-sm);margin-top:var(--spacing-sm)}.google-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.google-badge-info{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.85rem;color:var(--color-text-light);font-weight:500}@media print{.navbar,.page-header-with-back button,.btn-danger-ghost,.bulk-buy-section,.ftc-disclosure{display:none!important}.shopping-list-page{background:#fff!important;padding:0!important}.shopping-plant-item{break-inside:avoid}}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-line{background:linear-gradient(90deg,var(--color-border, #E5E5E5) 25%,rgba(255,255,255,.6) 50%,var(--color-border, #E5E5E5) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}.skeleton-plant-card{background:var(--color-surface-glass, rgba(255,255,255,.85));border-radius:12px;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.skeleton-space-card{display:flex;gap:12px;padding:12px;border-bottom:1px solid var(--color-border, #E5E5E5)}.skeleton-space-card:last-child{border-bottom:none}.skeleton-my-plant{display:flex;gap:12px;padding:12px;border-bottom:1px solid var(--color-border, #E5E5E5)}.skeleton-my-plant:last-child{border-bottom:none}.skeleton-condition-card{display:flex;flex-direction:column;align-items:center;padding:12px;background:var(--color-surface-glass, rgba(255,255,255,.85));border-radius:8px}.skeleton-plant-detail{background:var(--color-surface, #fff)}.skeleton-results{padding:16px}.skeleton-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.skeleton-grid{grid-template-columns:1fr}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-lg);background:var(--color-background, #F0F4F1)}.error-boundary-content{text-align:center;max-width:400px;padding:var(--spacing-xl, 2rem)}.error-boundary-icon{margin-bottom:var(--spacing-md, 1rem)}.error-boundary-content h2{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.5rem;color:var(--color-text, #1A1A1A);margin-bottom:var(--spacing-sm, .5rem)}.error-boundary-content p{color:var(--color-text-light, #4A5A4E);margin-bottom:var(--spacing-lg, 1.5rem);line-height:1.5}.error-boundary-actions{display:flex;gap:var(--spacing-sm, .5rem);justify-content:center}.confirm-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease-out}.confirm-dialog{max-width:360px;width:100%;padding:1.5rem;border-radius:16px;animation:slideUp .2s ease-out}.confirm-dialog h3{margin:0 0 .5rem;font-family:Playfair Display,serif;font-size:1.25rem;color:var(--text-primary, #fff)}.confirm-dialog p{margin:0 0 1.25rem;font-size:.9rem;color:var(--text-secondary, rgba(255,255,255,.7));line-height:1.5}.confirm-dialog-actions{display:flex;gap:.75rem;justify-content:flex-end}.confirm-dialog-actions .btn{min-width:90px}@keyframes slideUp{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.btn-danger{background:#dc3545;color:#fff;border:none}.btn-danger:hover{background:#c82333}.skip-link{position:absolute;top:-100%;left:1rem;z-index:10000;padding:.75rem 1.5rem;background:var(--color-primary, #1B6B2E);color:#fff;border-radius:8px;font-weight:600;text-decoration:none;font-size:.9rem;transition:top .2s}.skip-link:focus{top:1rem}*:focus-visible{outline:3px solid var(--color-secondary, #6BCB77);outline-offset:2px;border-radius:4px}*:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-secondary, #6BCB77);outline-offset:2px}.nav-item:focus-visible{outline-offset:-2px;border-radius:12px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.tip-card,.stage-row,.progress-bar-fill,.confidence-fill{transition:none!important}.stage-spinner-sm{animation:none!important}}.onboarding-page{position:relative;min-height:100vh;min-height:100dvh;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-garden.png);background-size:cover;background-position:center;background-repeat:no-repeat}.onboarding-logo{width:100px;height:auto;margin-bottom:1.5rem}.onboarding-card{width:100%;max-width:420px;padding:2rem;background:#0d3b18b3!important;border-color:#ffffff26!important;box-shadow:0 20px 60px #0000004d}.step-icon{display:flex;justify-content:center;margin-bottom:1rem}.step-indicator{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem}.step-dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d;transition:all .3s}.step-dot.active{background:var(--color-secondary, #6BCB77);width:28px;border-radius:5px}.step-dot.completed{background:var(--color-primary, #1B6B2E)}.onboarding-title{font-family:Playfair Display,serif;font-size:1.5rem;color:#fff;text-align:center;margin-bottom:.5rem}.onboarding-subtitle{text-align:center;color:#ffffffb3;margin-bottom:2rem;font-size:.9rem}.safety-toggle{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-radius:12px;background:#ffffff14;margin-bottom:.75rem;cursor:pointer;transition:background .2s}.safety-toggle:hover{background:#ffffff1f}.safety-toggle-label{display:flex;align-items:center;gap:.75rem;color:#fff}.toggle-switch{position:relative;width:48px;height:26px;background:#fff3;border-radius:13px;transition:background .3s;cursor:pointer;flex-shrink:0}.toggle-switch.active{background:var(--color-secondary, #6BCB77)}.toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .3s}.toggle-switch.active:after{transform:translate(22px)}.experience-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.experience-card{padding:1rem;border-radius:12px;background:#ffffff14;border:2px solid transparent;cursor:pointer;text-align:center;color:#fff;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem}.experience-card:hover{background:#ffffff1f}.experience-card.selected{border-color:var(--color-secondary, #6BCB77);background:#6bcb7726}.goal-cards{display:flex;flex-direction:column;gap:.5rem}.goal-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:12px;background:#ffffff14;border:2px solid transparent;cursor:pointer;color:#fff;transition:all .2s}.goal-card:hover{background:#ffffff1f}.goal-card.selected{border-color:var(--color-secondary, #6BCB77);background:#6bcb7726}.onboarding-actions{display:flex;gap:.75rem;margin-top:2rem}.onboarding-actions .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem}.onboarding-skip{text-align:center;margin-top:1rem}.onboarding-skip a{color:#ffffff80;text-decoration:none;font-size:.85rem;transition:color .2s}.onboarding-skip a:hover{color:#ffffffb3}.onboarding-skip-hint{display:block;font-size:.75rem;color:#ffffff59;margin-top:.25rem}.onboarding-section{margin-bottom:1.25rem}.onboarding-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.625rem}.onboarding-section-header label,.onboarding-section-title{color:#ffffffe6;font-weight:600;font-size:.95rem}.onboarding-optional-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff6;background:#ffffff14;padding:.125rem .5rem;border-radius:999px;margin-left:auto}.onboarding-hint{font-size:.8rem;color:#ffffff73;margin-top:.375rem}.onboarding-card .form-group label{color:#ffffffe6}.onboarding-card .input,.onboarding-card textarea{background:#fff;border-color:#ffffff80;color:#1a1a1a}.onboarding-card .input::placeholder,.onboarding-card textarea::placeholder{color:#8a9a8e}.onboarding-card .field-error{color:#fca5a5}.field-error{color:var(--color-danger, #EF4444);font-size:.8rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.premium-page{padding:var(--spacing-lg) var(--spacing-md);padding-bottom:calc(var(--navbar-height) + var(--safe-area-bottom) + var(--spacing-xl));min-height:100vh;max-width:600px;margin:0 auto;background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-features.png);background-size:cover;background-position:center;background-repeat:no-repeat}.premium-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.premium-header h1{display:flex;align-items:center;gap:.5rem;font-family:var(--font-display, "Playfair Display", serif);font-size:1.5rem;color:var(--color-text-inverse, #fff)}.premium-hero{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.premium-hero-icon{color:var(--color-secondary, #6BCB77);margin-bottom:var(--spacing-md)}.premium-hero h2{font-family:var(--font-display, "Playfair Display", serif);font-size:1.4rem;margin-bottom:var(--spacing-sm);color:var(--color-text-inverse, #fff)}.premium-hero p{color:#ffffffb3;line-height:1.5}.pricing-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.pricing-card{position:relative;padding:var(--spacing-lg) var(--spacing-md);text-align:center;cursor:pointer;border:2px solid transparent;transition:all .2s}.pricing-card.selected{border-color:var(--color-secondary, #6BCB77);box-shadow:0 0 20px #6bcb7733}.pricing-card-header h3{color:#ffffffb3;font-size:.9rem;margin-bottom:var(--spacing-sm)}.pricing-price{display:flex;align-items:baseline;justify-content:center;gap:2px}.price-amount{font-size:1.8rem;font-weight:800;color:var(--color-text-inverse, #fff)}.price-period{color:#ffffff80;font-size:.85rem}.pricing-note{color:#ffffff80;font-size:.8rem;margin-top:var(--spacing-sm)}.pricing-save-badge{position:absolute;top:-10px;right:-4px;background:var(--color-secondary, #6BCB77);color:#000;font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:12px}.premium-cta{margin-bottom:var(--spacing-xl)}.premium-comparison{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.comparison-column{background:#ffffff0d;border-radius:var(--radius-lg, 16px);padding:var(--spacing-lg) var(--spacing-md)}.comparison-premium{background:#6bcb7714;border:1px solid rgba(107,203,119,.2)}.comparison-title{display:flex;align-items:center;gap:.4rem;font-size:1rem;font-weight:700;margin-bottom:var(--spacing-md);color:var(--color-text-inverse, #fff)}.feature-list{list-style:none;padding:0;margin:0}.feature-list li{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;font-size:.82rem;color:#ffffffb3}.feature-list .check-icon{color:var(--color-secondary, #6BCB77);flex-shrink:0}.premium-active{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);margin-bottom:var(--spacing-xl)}.premium-active-badge{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);color:var(--color-secondary, #6BCB77);margin-bottom:var(--spacing-md)}.premium-active-badge h2{color:var(--color-text-inverse, #fff)}.premium-active p{color:#ffffffb3;margin-bottom:var(--spacing-lg)}.premium-faq{padding:var(--spacing-lg)}.premium-faq h3{font-family:var(--font-display, "Playfair Display", serif);font-size:1.2rem;margin-bottom:var(--spacing-lg);color:var(--color-text-inverse, #fff)}.faq-item{margin-bottom:var(--spacing-lg)}.faq-item:last-child{margin-bottom:0}.faq-item h4{color:var(--color-text-inverse, #fff);font-size:.95rem;margin-bottom:.3rem}.faq-item p{color:#fff9;font-size:.85rem;line-height:1.5}.upgrade-prompt{position:relative;padding:var(--spacing-lg);margin:var(--spacing-md) 0;border:1px solid rgba(107,203,119,.3)}.upgrade-prompt-close{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:none;border:none;color:#ffffff80;cursor:pointer;padding:4px}.upgrade-prompt-content{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.upgrade-prompt-icon{color:var(--color-secondary, #6BCB77);flex-shrink:0}.upgrade-prompt-content h3{color:var(--color-text-inverse, #fff);font-size:1rem;margin-bottom:.25rem}.upgrade-prompt-content p{color:#fff9;font-size:.85rem;line-height:1.4}.upgrade-prompt-actions{display:flex;align-items:center;gap:var(--spacing-md)}.upgrade-prompt-compact{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#6bcb771a;border:1px solid rgba(107,203,119,.2);border-radius:var(--radius-md, 12px);color:#ffffffb3;font-size:.85rem}.upgrade-prompt-compact .btn{margin-left:auto}.potd-section{padding:var(--spacing-xl) 0}.potd-section .section-title{display:flex;align-items:center;gap:.5rem;justify-content:center}.potd-card{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);cursor:pointer;transition:transform .2s,box-shadow .2s}.potd-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0003}.potd-image{width:110px;height:110px;border-radius:var(--radius-md, 12px);overflow:hidden;flex-shrink:0}.potd-image img{width:100%;height:100%;object-fit:cover}.potd-info{flex:1;min-width:0}.potd-info h3{font-family:var(--font-display, "Playfair Display", serif);font-size:1.1rem;color:var(--color-text);margin-bottom:2px}.potd-scientific{font-style:italic;color:var(--color-text-light);font-size:.8rem;margin-bottom:.4rem}.potd-description{color:var(--color-text-light);font-size:.85rem;line-height:1.4;margin-bottom:.5rem}.potd-tags{display:flex;flex-wrap:wrap;gap:6px}.potd-tag{font-size:.7rem;padding:2px 8px;border-radius:10px;background:#1b6b2e14;color:var(--color-text-light)}.potd-tag-safe{background:#22c55e1a;color:var(--color-success)}.plant-health-page{position:relative;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);padding-bottom:calc(var(--navbar-height) + var(--safe-area-bottom) + var(--spacing-3xl));background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-garden.png);background-size:cover;background-position:center;background-repeat:no-repeat}.plant-health-page .page-header{display:flex;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.plant-health-page .page-header .back-btn{color:#fff;margin-top:2px;flex-shrink:0}.plant-health-page .page-header-text{flex:1}.plant-health-page .page-header h1{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);font-family:Playfair Display,serif;font-size:1.5rem;display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.plant-health-page .page-subtitle{color:var(--color-text-on-dark-muted);text-shadow:0 2px 8px rgba(0,0,0,.3);margin-top:var(--spacing-xs);font-size:.9375rem}.premium-badge-inline{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:20px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:.6875rem;font-weight:700;font-family:Inter,sans-serif;text-transform:uppercase;letter-spacing:.5px;text-shadow:none;white-space:nowrap;vertical-align:middle}.diagnosis-input-container{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:600px;margin:0 auto}.diagnosis-upload-panel,.diagnosis-name-panel{padding:var(--spacing-xl)}.diagnosis-name-panel .section-help{font-size:.875rem;color:var(--color-text-light);margin-bottom:var(--spacing-md)}.diagnosis-result-container{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:600px;margin:0 auto}.diagnosis-status-banner{padding:var(--spacing-xl);border-left:4px solid}.status-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.health-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.875rem;font-weight:600}.health-status-badge-small{padding:3px 10px;font-size:.75rem}.urgency-indicator{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;font-weight:500}.diagnosis-plant-name{font-family:Playfair Display,serif;font-size:1.375rem;color:var(--color-text);margin-bottom:var(--spacing-md)}.diagnosis-section{padding:var(--spacing-xl)}.diagnosis-section h3{display:flex;align-items:center;gap:var(--spacing-xs);font-family:Playfair Display,serif;font-size:1.125rem;color:var(--color-text);margin-bottom:var(--spacing-lg)}.assessment-text{font-size:.9375rem;line-height:1.6;color:var(--color-text)}.diagnosis-cards{display:flex;flex-direction:column;gap:var(--spacing-md)}.issue-card,.treatment-card{padding:var(--spacing-lg)}.issue-card-header,.treatment-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.issue-card-header h4,.treatment-card-header h4{font-size:.9375rem;font-weight:600;color:var(--color-text);margin:0}.severity-badge,.priority-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap;flex-shrink:0}.issue-description,.treatment-description{font-size:.875rem;line-height:1.5;color:var(--color-text-light)}.affected-parts,.treatment-products{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--spacing-sm)}.affected-label,.products-label{font-size:.75rem;font-weight:600;color:var(--color-text-light)}.affected-tag,.product-tag{display:inline-block;padding:2px 8px;border-radius:8px;background:var(--color-background);color:var(--color-text);font-size:.75rem;font-weight:500}.prevention-tips-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.prevention-tips-list li{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:.9375rem;line-height:1.5;color:var(--color-text);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.prevention-tips-list li:last-child{border-bottom:none}.prevention-tips-list li:before{content:"";display:inline-block;width:6px;height:6px;min-width:6px;border-radius:50%;background:var(--color-primary);margin-top:8px}.diagnosis-disclaimer{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg);background:#eab3081a;border:1px solid rgba(234,179,8,.2);font-size:.8125rem;line-height:1.5;color:var(--color-text-light)}.diagnosis-disclaimer svg{color:#eab308;flex-shrink:0;margin-top:1px}.diagnosis-history-section{margin-top:var(--spacing-md)}.history-toggle{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border-glass);border-radius:var(--border-radius-lg);color:var(--color-text);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition)}.history-toggle:hover{background:var(--color-surface-glass-strong)}.history-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.history-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all var(--transition)}.history-item:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.history-item-info{display:flex;flex-direction:column;gap:2px}.history-plant-name{font-size:.9375rem;font-weight:600;color:var(--color-text)}.history-date{font-size:.75rem;color:var(--color-text-light)}.achievements-page{padding:var(--page-padding);padding-bottom:calc(var(--navbar-height) + var(--spacing-xl));background-color:#0d3b18;background-image:linear-gradient(#0d3b1899,#0d3b1899),url(/rprp/images/bg-dashboard.png);background-size:cover;background-position:center;background-repeat:no-repeat;min-height:100vh}.achievements-page .page-header{text-align:center;margin-bottom:var(--spacing-xl)}.achievements-section{margin-bottom:var(--spacing-xl)}.achievements-section-title{font-size:1rem;font-weight:700;color:var(--color-text-on-dark-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md);text-shadow:0 1px 4px rgba(0,0,0,.2)}.achievements-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.achievement-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-lg) var(--spacing-md);gap:var(--spacing-sm);transition:transform var(--transition)}.achievement-card h3{font-size:.875rem;font-weight:700;margin:0}.achievement-card p{font-size:.75rem;color:var(--color-text-light);margin:0;line-height:1.3}.achievement-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.achievement-icon-earned{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px #f59e0b4d}.achievement-icon-locked{background:#0000000d;color:var(--color-text-lighter)}.achievement-earned{border:1px solid rgba(245,158,11,.2)}.achievement-locked{opacity:.6}.achievement-date{font-size:.6875rem;color:var(--color-text-lighter)}.achievement-toast{position:fixed;top:var(--spacing-lg);left:50%;transform:translate(-50%) translateY(-100px);z-index:200;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#f59e0bf2,#d97706f2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--border-radius-lg);color:#fff;box-shadow:0 8px 32px #f59e0b4d;transition:transform .4s cubic-bezier(.34,1.56,.64,1);max-width:calc(100vw - 2rem)}.achievement-toast-visible{transform:translate(-50%) translateY(0)}.achievement-toast-icon{flex-shrink:0;animation:achievementBounce .6s ease .3s}.achievement-toast-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;opacity:.8}.achievement-toast-name{font-size:1rem;font-weight:700}.achievement-toast-desc{font-size:.75rem;opacity:.9}@keyframes achievementBounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.calendar-page{position:relative;min-height:100vh;padding-bottom:calc(var(--navbar-height) + var(--safe-area-bottom) + var(--spacing-xl));background-color:#f0f4f1;background-image:linear-gradient(#f0f4f1d1,#f0f4f1d1),url(/rprp/images/bg-garden.png);background-size:cover;background-position:center;background-repeat:no-repeat}.calendar-page .page-header{padding:var(--spacing-xl) var(--spacing-md) var(--spacing-md);text-align:center}.calendar-page .page-header h1{font-family:Playfair Display,serif;margin:0;color:var(--color-text);text-shadow:none}.calendar-page .page-header p{margin:var(--spacing-xs) 0 0;color:var(--color-text-light);font-size:.95rem;text-shadow:none}.calendar-header-row{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);color:var(--color-primary)}.calendar-header-row h1{margin:0}.calendar-zone-selector{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:0 var(--spacing-md) var(--spacing-md)}.zone-label{font-size:.85rem;font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.05em}.zone-select{min-width:120px;padding:var(--spacing-sm) var(--spacing-md);font-size:.95rem;font-weight:600}.month-selector{display:flex;align-items:center;gap:4px;padding:0 var(--spacing-sm);margin-bottom:var(--spacing-md)}.month-nav-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:#ffffff80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-text);cursor:pointer;transition:all var(--transition)}.month-nav-btn:hover{background:#1b6b2e26;color:var(--color-primary)}.month-chips{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;flex:1;padding:4px 0}.month-chips::-webkit-scrollbar{display:none}.month-chip{flex-shrink:0;scroll-snap-align:center;padding:6px 12px;border:1px solid rgba(27,107,46,.15);border-radius:20px;background:#fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.8rem;font-weight:600;color:var(--color-text-light);cursor:pointer;transition:all var(--transition);white-space:nowrap}.month-chip:hover{background:#1b6b2e1a;border-color:#1b6b2e4d;color:var(--color-primary)}.month-chip.current{border-color:#1b6b2e4d;color:var(--color-primary)}.month-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 2px 8px #1b6b2e4d}.calendar-month-title{display:flex;align-items:baseline;justify-content:space-between;padding:0 var(--spacing-md);margin-bottom:var(--spacing-md)}.calendar-month-title h2{font-family:Playfair Display,serif;font-size:1.5rem;margin:0;color:var(--color-text)}.calendar-month-count{font-size:.85rem;color:var(--color-text-lighter);font-weight:500}.calendar-content{padding:0 var(--spacing-md)}.calendar-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-md);gap:var(--spacing-md);color:var(--color-text-light)}.calendar-loading .spin{animation:calendarSpin 1s linear infinite}@keyframes calendarSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.calendar-error{text-align:center;padding:var(--spacing-xl);margin:var(--spacing-md) 0}.calendar-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);gap:var(--spacing-md);color:var(--color-text-light);margin:var(--spacing-md) 0}.calendar-empty h3{margin:0;color:var(--color-text)}.calendar-empty p{margin:0;font-size:.9rem;line-height:1.5}.action-group{margin-bottom:var(--spacing-lg)}.action-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);padding:0 2px}.action-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.03em}.action-group-count{font-size:.8rem;color:var(--color-text-lighter);font-weight:500}.action-cards{display:flex;flex-direction:column;gap:6px}.action-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;border-left:4px solid transparent;border-radius:var(--border-radius-sm);background:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:all var(--transition);text-align:left;width:100%;font-family:inherit}.action-card:hover{background:#ffffffe6;transform:translate(2px);box-shadow:0 2px 12px #0000000f}.action-card:active{transform:translate(1px)}.action-card-image{flex-shrink:0;width:44px;height:44px;border-radius:10px;overflow:hidden;background:#1b6b2e0d}.action-card-image img{width:100%;height:100%;object-fit:cover}.action-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-lighter)}.action-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.action-card-name{font-size:.9rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-card-type{font-size:.75rem;color:var(--color-text-lighter);text-transform:capitalize}.action-card-notes{font-size:.75rem;color:var(--color-text-light);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px}.action-card-arrow{flex-shrink:0;color:var(--color-text-lighter)}.calendar-legend{margin:var(--spacing-xl) var(--spacing-md) var(--spacing-md);padding:var(--spacing-md)}.legend-title{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-lighter);margin-bottom:var(--spacing-sm)}.legend-items{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.legend-item{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:var(--color-text-light);font-weight:500}.legend-dot{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:#fff;flex-shrink:0}.theme-toggle-group{display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs);background:#0000000a;border-radius:var(--border-radius)}.theme-toggle-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--border-radius-sm);background:transparent;color:var(--color-text-light);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.theme-toggle-btn:hover{background:#0000000f}.theme-toggle-active{background:var(--color-surface)!important;color:var(--color-primary);box-shadow:0 1px 4px var(--color-shadow)}[data-theme=dark] .theme-toggle-group{background:#ffffff0f}[data-theme=dark] .theme-toggle-active{background:#ffffff1a!important}.feature-card-clickable{cursor:pointer;transition:transform var(--transition),box-shadow var(--transition)}.feature-card-clickable:hover{transform:translateY(-2px);box-shadow:0 8px 24px #1b6b2e26}.share-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.8125rem;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-pill);transition:all var(--transition)}.share-btn-copied{border-color:var(--color-primary)!important;color:var(--color-primary)!important}.plant-search-section{padding:var(--spacing-2xl) var(--spacing-md);background:linear-gradient(180deg,rgba(107,203,119,.05),transparent)}.plant-search-bar{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md)}.plant-search-icon{color:var(--color-text-lighter);flex-shrink:0}.plant-search-input{flex:1;border:none;background:transparent;font-size:1rem;color:var(--color-text);outline:none;font-family:inherit}.plant-search-input::placeholder{color:var(--color-text-lighter)}.plant-search-results{display:flex;flex-direction:column;gap:var(--spacing-sm)}.plant-search-result{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:transform var(--transition-fast);border-radius:var(--border-radius-sm)}.plant-search-result:hover{transform:translate(4px)}.plant-search-thumb{width:48px;height:48px;border-radius:var(--border-radius-sm);object-fit:cover;flex-shrink:0}.plant-search-info{flex:1;min-width:0}.plant-search-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.plant-search-sci{font-size:.75rem;color:var(--color-text-lighter);font-style:italic}.plant-search-loading{text-align:center;color:var(--color-text-lighter);font-size:.875rem;padding:var(--spacing-md)}.upgrade-screen{display:flex;align-items:center;justify-content:center;min-height:70vh;padding:var(--spacing-lg)}.upgrade-screen-card{text-align:center;max-width:400px;width:100%;padding:var(--spacing-xl) var(--spacing-lg)}.upgrade-screen-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;margin:0 auto var(--spacing-lg)}.upgrade-screen-card h2{font-family:var(--font-heading);font-size:1.5rem;margin-bottom:var(--spacing-sm)}.upgrade-screen-msg{color:var(--color-text-light);font-size:.9375rem;line-height:1.5;margin-bottom:var(--spacing-lg)}.upgrade-screen-features{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);text-align:left}.upgrade-feature-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.875rem;color:var(--color-text);padding:var(--spacing-xs) 0}.upgrade-feature-item:before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.75rem;flex-shrink:0}.upgrade-screen-card .btn-text{margin-top:var(--spacing-sm);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.space-review-page{min-height:100vh;padding:var(--spacing-md) var(--spacing-md) calc(80px + var(--spacing-xl));background-color:#0d3b18;background-image:url(/rprp/images/bg-features.png);background-size:cover;background-position:center;background-repeat:no-repeat}.sr-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.sr-header .btn-icon{color:#fff}.sr-header h1{font-size:1.4rem;font-weight:700;color:#fff;margin:0}.sr-photo-card{margin-bottom:var(--spacing-md);overflow:hidden}.sr-photo-wrap{position:relative;border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden;max-height:240px}.sr-photo{width:100%;height:240px;object-fit:cover;display:block}.sr-photo-overlay{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(transparent,#000000b3);display:flex;justify-content:flex-end}.sr-confidence-pill{background:#4ade8040;border:1px solid rgba(74,222,128,.5);color:#4ade80;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:20px}.sr-description{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);font-size:.9rem;color:var(--color-text);line-height:1.5;margin:0}.sr-stats-card{margin-bottom:var(--spacing-md);padding:var(--spacing-lg)}.sr-section-title{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.sr-section-title h2{font-size:1.1rem;font-weight:700;color:var(--color-text);margin:0}.sr-section-title svg{color:var(--color-primary)}.sr-section-help{font-size:.82rem;color:#5a6a5e;margin:0 0 var(--spacing-md);line-height:1.4}.stat-slider-row{padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(0,0,0,.06)}.stat-slider-row:last-child{border-bottom:none}.stat-slider-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xs)}.stat-slider-label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--color-text)}.stat-slider-label svg{color:var(--color-primary);flex-shrink:0}.stat-slider-value-row{display:flex;align-items:center;gap:var(--spacing-xs)}.stat-slider-value{font-size:.85rem;font-weight:700;color:var(--color-primary);min-width:60px;text-align:right}.stat-slider-badges{display:flex;align-items:center;gap:4px}.stat-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:4px}.stat-badge-detected{background:#4ade8026;color:#22c55e}.stat-badge-custom{background:#f59e0b26;color:#f59e0b}.stat-reset-btn{background:none;border:none;cursor:pointer;padding:2px;color:#888;display:flex;align-items:center}.stat-reset-btn:hover{color:var(--color-primary)}.stat-options{display:flex;gap:6px;flex-wrap:wrap}.stat-option-btn{padding:6px 14px;border-radius:8px;border:1.5px solid rgba(0,0,0,.1);background:#ffffff80;font-size:.82rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all .15s ease}.stat-option-btn:hover{border-color:var(--color-primary)}.stat-option-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.stat-range-input{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#00000014;border-radius:3px;outline:none;margin-top:4px}.stat-range-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px #0003}.stat-range-input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px #0003}.sr-prefs-card{margin-bottom:var(--spacing-md);padding:var(--spacing-lg)}.pref-chip-group{margin-bottom:var(--spacing-md)}.pref-chip-group:last-child{margin-bottom:0}.pref-chip-header{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-xs)}.pref-chip-header svg{color:var(--color-primary)}.pref-chip-row{display:flex;flex-wrap:wrap;gap:6px}.pref-chip{padding:5px 12px;border-radius:20px;border:1.5px solid rgba(0,0,0,.1);background:#ffffff80;font-size:.78rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:4px}.pref-chip:hover{border-color:var(--color-primary);background:#4ade8014}.pref-chip-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.sr-actions{padding:var(--spacing-md) 0}.sr-actions .btn-text{margin-top:var(--spacing-sm);color:#ffffffb3}.sr-actions .btn-text:hover{color:#fff}.sr-actions .error-message{margin-bottom:var(--spacing-md)}.reanalyze-buttons{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}@media (min-width: 480px){.reanalyze-buttons{flex-direction:row}}[data-theme=dark] .stat-slider-row{border-bottom-color:#ffffff0f}[data-theme=dark] .stat-option-btn{background:#ffffff14;border-color:#ffffff26;color:var(--color-text)}[data-theme=dark] .stat-option-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}[data-theme=dark] .pref-chip{background:#ffffff14;border-color:#ffffff26;color:var(--color-text)}[data-theme=dark] .pref-chip-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}[data-theme=dark] .pref-chip:hover{border-color:var(--color-primary);background:#4ade8026}[data-theme=dark] .stat-range-input{background:#ffffff1a}[data-theme=dark] .sr-section-help{color:#8a9a8e}[data-theme=dark] .sr-confidence-pill{background:#4ade8033}
