@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:wght@600&display=swap";:root{--green-50: #f0f7ec;--green-100: #d4eac6;--green-200: #a8d48e;--green-400: #6ab04c;--green-600: #3d7a2a;--green-800: #1e4a12;--green-900: #0e2a07;--bark: #7c5c3a;--bark-light: #c4a882;--soil: #3d2b1f;--cream: #faf8f4;--text: #1a1a1a;--text-muted: #6b7280;--border: rgba(0,0,0,.1);--bg: #f5f2ed;--card-bg: #ffffff;--radius: 10px;--radius-lg: 16px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:DM Sans,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}.logo-bar{background:var(--green-900);display:flex;align-items:center;justify-content:space-between;padding:8px 1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.logo-bar-actions{display:flex;align-items:center;gap:10px}.logo{height:32px;width:auto;filter:brightness(0) invert(1)}.app-header{background:var(--green-900);padding:0;position:sticky;top:0;z-index:100;box-shadow:0 2px 12px #0000004d}.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:stretch;padding:0 1rem}.logo-area{display:none}.tab-nav{display:flex;overflow-x:auto;scrollbar-width:none}.tab-nav::-webkit-scrollbar{display:none}.tab-btn{display:flex;align-items:center;gap:6px;padding:0 1.2rem;height:58px;background:none;border:none;border-bottom:3px solid transparent;color:#fff9;font-family:DM Sans,sans-serif;font-size:13px;font-weight:400;cursor:pointer;white-space:nowrap;transition:all .2s}.tab-btn:hover{color:#ffffffe6;background:#ffffff0d}.tab-btn.active{color:#fff;border-bottom-color:var(--green-400);font-weight:500}.tab-icon{font-size:16px}.main-content{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.page-header{margin-bottom:2rem}.page-header h1{font-family:Playfair Display,serif;font-size:28px;color:var(--green-900);margin-bottom:4px}.page-desc{color:var(--text-muted);font-size:14px}.form-section{background:var(--card-bg);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--border);margin-bottom:2rem}.form-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:5px;flex:1;min-width:160px}.form-group.full-width{flex:100%}label{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}input[type=text],input[type=number],input[type=date],select,textarea{padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius);font-family:DM Sans,sans-serif;font-size:14px;background:var(--cream);color:var(--text);transition:border-color .2s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--green-400);background:#fff}textarea{resize:vertical;min-height:100px}.plants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.plant-card{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.plant-card-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--green-50);font-size:13px;font-weight:500;color:var(--green-800)}.plant-dot{width:8px;height:8px;border-radius:50%;background:var(--green-400)}.plant-image-zone{height:160px;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--cream);transition:background .2s}.plant-image-zone:hover{background:var(--green-50)}.plant-preview{width:100%;height:100%;object-fit:cover}.upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-muted);font-size:12px;text-align:center;padding:1rem}.upload-icon{font-size:28px}.upload-hint{font-size:11px;color:#bbb}.remove-img-btn{width:100%;padding:6px;background:none;border:none;border-top:1px solid var(--border);color:#e55;font-size:12px;cursor:pointer}.plant-img-count{margin-left:auto;font-size:11px;background:var(--green-400);color:#fff;padding:2px 7px;border-radius:100px}.plant-thumbnails{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--cream)}.plant-thumb-wrap{position:relative;width:70px;height:70px}.plant-thumb{width:70px;height:70px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}.thumb-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;background:#e55;color:#fff;border:none;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center}.plant-image-zone.small{height:60px;font-size:12px;gap:4px}.plant-image-zone.small .upload-icon{font-size:18px}.sample-type-tabs{display:flex;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}.sample-type-btn{padding:8px 16px;border-radius:100px;border:1px solid var(--border);background:var(--cream);font-family:DM Sans,sans-serif;font-size:13px;cursor:pointer;transition:all .2s;color:var(--text-muted)}.sample-type-btn:hover{border-color:var(--green-400);color:var(--green-800)}.sample-type-btn.active{background:var(--green-600);color:#fff;border-color:var(--green-600)}.params-title{font-size:14px;font-weight:600;color:var(--green-800);margin:1.5rem 0 1rem;padding-bottom:6px;border-bottom:2px solid var(--green-100)}.params-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px}.param-input-row{display:flex;flex-direction:column;gap:3px}.param-label{font-size:12px;color:var(--text-muted);font-weight:400}.param-unit{color:#bbb}.param-optimal{color:var(--green-600);font-size:11px}.param-input{padding:7px 10px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--cream)}.recipe-params-table{margin-bottom:1rem}.recipe-params-header{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;padding:6px 0;border-bottom:1px solid var(--border);margin-bottom:6px}.recipe-params-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;align-items:center;padding:3px 0}.param-label-sm{font-size:13px;color:var(--text)}.param-label-sm em{font-style:normal;color:var(--text-muted);font-size:11px}.param-input-sm{padding:5px 8px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--cream);width:100%}.tank-section{margin:1rem 0;background:var(--cream);border-radius:var(--radius);padding:12px}.tank-label{font-size:12px;font-weight:600;color:var(--green-800);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.save-row{display:flex;align-items:center;gap:1rem;margin-top:1.5rem}.save-btn{padding:10px 24px;background:var(--green-600);color:#fff;border:none;border-radius:var(--radius);font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.save-btn:hover{background:var(--green-800)}.save-btn:disabled{opacity:.6;cursor:not-allowed}.success-msg{color:var(--green-600);font-size:14px;font-weight:500}.pdf-upload-zone{padding:12px 16px;border:2px dashed var(--border);border-radius:var(--radius);cursor:pointer;font-size:13px;color:var(--text-muted);background:var(--cream);transition:all .2s}.pdf-upload-zone:hover{border-color:var(--green-400);background:var(--green-50)}.pdf-upload-zone.extracting{border-color:var(--green-400);background:var(--green-50);cursor:wait}.param-input.has-value{background:#fff;border-color:var(--green-400)}.filter-row{display:flex;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}.filter-btn{padding:7px 14px;border-radius:100px;border:1px solid var(--border);background:var(--card-bg);font-family:DM Sans,sans-serif;font-size:13px;cursor:pointer;transition:all .2s;color:var(--text-muted)}.filter-btn:hover{border-color:var(--green-400)}.filter-btn.active{background:var(--green-600);color:#fff;border-color:var(--green-600)}.log-list{display:flex;flex-direction:column;gap:8px}.log-card{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.log-card-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background .15s}.log-card-header:hover{background:var(--green-50)}.log-card-meta{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.log-type-badge{font-size:11px;background:var(--green-50);color:var(--green-800);padding:3px 8px;border-radius:100px;white-space:nowrap;border:1px solid var(--green-100)}.log-title{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-card-actions{display:flex;align-items:center;gap:8px}.icon-btn{padding:5px 10px;border:1px solid var(--border);border-radius:6px;background:none;font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap}.analyze-btn:hover{background:var(--green-50);border-color:var(--green-400)}.delete-btn:hover{background:#fef2f2;border-color:#fca5a5}.expand-icon{font-size:10px;color:var(--text-muted);margin-left:4px}.log-card-body{padding:12px 16px;border-top:1px solid var(--border);background:var(--cream)}.log-details{display:flex;flex-direction:column;gap:10px}.log-text{font-size:14px;color:var(--text)}.log-values{display:flex;gap:6px;flex-wrap:wrap}.log-values-grid{display:flex;gap:6px;flex-wrap:wrap;max-height:120px;overflow-y:auto}.log-chip{font-size:12px;padding:3px 8px;background:var(--green-50);color:var(--green-800);border-radius:100px;border:1px solid var(--green-100)}.log-thumbnail{width:80px;height:60px;object-fit:cover;border-radius:6px;cursor:pointer;border:1px solid var(--border)}.pdf-link{font-size:13px;color:var(--green-600);text-decoration:none;display:inline-flex;align-items:center;gap:4px}.pdf-link:hover{text-decoration:underline}.analysis-panel{border-top:2px solid var(--green-200);padding:16px;background:linear-gradient(to bottom,var(--green-50),var(--cream))}.analysis-header{font-size:13px;font-weight:600;color:var(--green-800);margin-bottom:10px}.analysis-loading{color:var(--text-muted);font-size:13px;font-style:italic}.analysis-text{font-size:14px;line-height:1.7;color:var(--text)}.analysis-text p{margin-bottom:8px}.analysis-bold{font-weight:500}.follow-up-row{display:flex;gap:8px;margin-top:12px}.follow-up-row input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;background:#fff}.follow-up-row button{padding:8px 16px;background:var(--green-600);color:#fff;border:none;border-radius:var(--radius);font-size:13px;cursor:pointer}.follow-up-row button:disabled{opacity:.6}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;cursor:pointer}.lightbox img{max-width:90vw;max-height:90vh;border-radius:var(--radius);object-fit:contain}.analys-section{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border);padding:1.5rem;margin-bottom:2rem}.analys-section h2{font-family:Playfair Display,serif;font-size:20px;color:var(--green-900);margin-bottom:1.25rem}.analys-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.analys-section-header h2{margin-bottom:0}.sample-nav{display:flex;align-items:center;gap:8px;font-size:13px}.sample-nav button{width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:var(--cream);cursor:pointer;font-size:14px}.sample-nav button:disabled{opacity:.4;cursor:default}.nova-analysis-meta{display:flex;gap:16px;font-size:12px;color:var(--text-muted);margin-bottom:1rem;flex-wrap:wrap}.nutrient-list{display:flex;flex-direction:column;gap:2px}.nutrient-row{display:grid;grid-template-columns:180px 1fr 80px;gap:10px;align-items:center;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.04)}.nutrient-name{display:flex;flex-direction:column}.nutrient-name span:first-child{font-size:13px;font-weight:500}.nutrient-unit{font-size:11px;color:var(--text-muted)}.nutrient-bar-container{display:flex;align-items:center;gap:8px}.nutrient-bar-track{flex:1;height:10px;background:var(--cream);border-radius:100px;position:relative;overflow:hidden;border:1px solid var(--border)}.optimal-zone{position:absolute;top:0;height:100%;background:#64b45033}.nutrient-bar-fill{height:100%;border-radius:100px;transition:width .5s ease;min-width:3px}.nutrient-bar-fill.ok{background:var(--green-400)}.nutrient-bar-fill.low{background:#e8a84b}.nutrient-bar-fill.high{background:#e55}.nutrient-value{display:flex;align-items:center;white-space:nowrap}.value-label{font-size:13px;font-weight:500}.value-label.ok{color:var(--green-700, #3d7a2a)}.value-label.low{color:#b57a20}.value-label.high{color:#c33}.nutrient-optimal-label{font-size:11px;color:var(--text-muted);white-space:nowrap}.loading-state,.empty-state{text-align:center;padding:3rem;color:var(--text-muted)}.empty-state span{font-size:18px;display:block;margin-bottom:8px;font-weight:500}.empty-state p{font-size:14px}@media (max-width: 600px){.header-inner{padding:0 .75rem}.logo-area{min-width:auto;padding-right:.75rem}.tab-btn{padding:0 .75rem;height:52px;font-size:12px}.tab-icon{font-size:18px}.tab-label{display:none}.main-content{padding:1.25rem .75rem}.nutrient-row{grid-template-columns:130px 1fr 60px}.recipe-params-row{grid-template-columns:1fr}.recipe-params-header{display:none}}
