:root{--forest: #1a3c34;--moss: #2d5a4a;--sage: #5a8f7b;--fern: #8fb996;--cream: #f7f4ef;--parchment: #ebe6dc;--earth: #6b5344;--gold: #c4a35a;--text: #1e2a26;--muted: #5c6b66;--white: #ffffff;--shadow: 0 4px 24px rgba(26, 60, 52, .12);--radius: 8px;font-family:"Source Sans 3",system-ui,sans-serif;color:var(--text);background:var(--cream);line-height:1.6}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}h1,h2,h3,.serif{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;line-height:1.2}a{color:var(--moss);text-decoration:none}a:hover{color:var(--forest);text-decoration:underline}button,input,select{font-family:inherit;font-size:.95rem}button{cursor:pointer;border:none;border-radius:var(--radius);padding:.6rem 1.2rem;background:var(--forest);color:var(--white);transition:background .2s}button:hover{background:var(--moss)}button.secondary{background:var(--parchment);color:var(--forest);border:1px solid var(--sage)}button.secondary:hover{background:var(--fern);color:var(--white)}input,select{padding:.55rem .75rem;border:1px solid var(--parchment);border-radius:var(--radius);background:var(--white);width:100%}input:focus,select:focus{outline:2px solid var(--sage);outline-offset:1px}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:var(--parchment);color:var(--moss)}.badge.display{background:#e8f0ec;color:var(--forest)}.badge.herb,.badge.culinary,.badge.medicinal{background:#f0ebe0;color:var(--earth)}.plant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.plant-card{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.plant-card:hover{transform:translateY(-3px);box-shadow:0 8px 32px #1a3c342e}.plant-card .plant-card-image{width:100%;height:220px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#f0ede6,#e4ebe6);overflow:hidden}.plant-card img{width:100%;height:100%;object-fit:contain;object-position:center center;background:transparent}.plant-card .placeholder{height:200px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--parchment),var(--fern));color:var(--muted);font-style:italic}.plant-card-body{padding:1rem 1.1rem 1.2rem;flex:1;display:flex;flex-direction:column;gap:.35rem}.plant-card h3{margin:0;font-size:1.15rem;font-style:italic}.plant-card .common{color:var(--muted);font-size:.9rem}.plant-card .meta{margin-top:auto;display:flex;flex-wrap:wrap;gap:.35rem;padding-top:.5rem}.filters-panel{background:var(--white);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow)}.filters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-top:1rem}.filters-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.stats-bar{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1rem 0}.stat-item strong{display:block;font-family:Cormorant Garamond,serif;font-size:2rem;color:var(--forest);line-height:1}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0}@media (max-width: 768px){.detail-hero{grid-template-columns:1fr}}.detail-hero .detail-image-wrap{background:linear-gradient(180deg,#f0ede6,#e4ebe6);border-radius:var(--radius);box-shadow:var(--shadow);padding:.75rem;display:flex;align-items:center;justify-content:center;min-height:320px;max-height:520px}.detail-hero img{width:100%;max-height:480px;object-fit:contain;object-position:center center;border-radius:4px}.attribution{font-size:.8rem;color:var(--muted);margin-top:.5rem;font-style:italic}.data-table{width:100%;border-collapse:collapse;margin:1rem 0}.data-table th,.data-table td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--parchment)}.data-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin:2rem 0}.sop-list{list-style:none;padding:0;margin:0}.sop-list li{background:var(--white);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:.75rem;box-shadow:var(--shadow)}.sop-list li a{font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600}.demo-banner{background:var(--gold);color:var(--forest);text-align:center;padding:.5rem 1rem;font-size:.9rem;font-weight:600}
