.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:420px;overflow-y:auto;width:90%}.modal-content{padding:0}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.modal-header h2{color:#333;flex:1 1;font-size:1.25rem;margin:0;text-align:center}.modal-header .back-btn{font-size:1.5rem}.modal-header .back-btn,.modal-header .close-btn{background:none;border:none;color:#666;cursor:pointer;padding:0;width:30px}.modal-header .close-btn{font-size:1.75rem;line-height:1}.modal-header .back-btn:hover,.modal-header .close-btn:hover{color:#333}.modal-body{padding:1.5rem}.connect-options{display:flex;flex-direction:column;gap:1rem}.connect-option{align-items:center;background:#fff;border:2px solid #eee;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;gap:1rem;padding:1rem 1.25rem;transition:all .2s}.connect-option:hover{background:#f8fff8;border-color:#5cb85c}.connect-option.metamask{border-color:#f5841f20}.connect-option.metamask:hover{background:#fff8f3;border-color:#f5841f}.option-icon{font-size:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:.5rem}.form-group input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:1rem;padding:.75rem;width:100%}.form-group input:focus{border-color:#5cb85c;outline:none}.submit-btn{background:#5cb85c;border-radius:6px;font-size:1rem;font-weight:500;padding:.875rem;transition:background .2s}.submit-btn:hover{background:#4a9a4a}.submit-btn:disabled{background:#ccc;cursor:not-allowed}.switch-link{color:#666;margin-top:1.25rem;text-align:center}.switch-link button{background:none;border:none;color:#5cb85c;cursor:pointer;font-size:1rem;font-weight:500}.switch-link button:hover{text-decoration:underline}.ens-description{color:#666;line-height:1.5;margin-bottom:1.5rem}.ens-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.ens-option{align-items:center;border:2px solid #eee;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:1rem;transition:all .2s}.ens-option:hover{border-color:#5cb85c}.ens-option.selected{background:#f8fff8;border-color:#5cb85c}.ens-option input{accent-color:#5cb85c}.ens-actions{display:flex;flex-direction:column;gap:.75rem}.skip-btn{background:#0000;border:1px solid #ddd;border-radius:6px;color:#666;cursor:pointer;font-size:1rem;padding:.875rem;transition:all .2s;width:100%}.skip-btn:hover{border-color:#999;color:#333}.app-header{background:#fff;border-bottom:1px solid #ddd;padding:15px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.main-nav{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.logo{color:#333;font-size:1.5rem;font-weight:700;text-decoration:none}.logo:hover{color:#75b9e7}.nav-links{align-items:center;display:flex;gap:20px;list-style:none;margin:0;padding:0}.nav-links a{border-radius:5px;color:#666;padding:8px 16px;text-decoration:none;transition:all .2s}.nav-links a:hover{background:#f8f9fa;color:#333}.nav-links a.active{background:linear-gradient(145deg,#9fe7f5,#75b9e7);color:#333}.connect-btn{background:none;border:none;border-radius:5px;color:#666;cursor:pointer;font-size:1rem;padding:8px 16px;text-decoration:none;transition:all .2s}.connect-btn:hover{background:#f8f9fa;color:#333}.logout-btn{background:#dc3545;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;padding:8px 16px;text-decoration:none;transition:all .2s}.logout-btn:hover{background:#c82333}@media (max-width:768px){.main-nav{flex-direction:column;gap:15px}.nav-links{gap:10px}.nav-links a{font-size:.9rem;padding:6px 12px}}.location-page{margin:0 auto;max-width:1200px;padding:20px}.location-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.header-center{text-align:center}.header-center h1{font-size:2.5rem;margin:0}.section-type{border-radius:20px;display:inline-block;font-size:.9rem;padding:4px 12px;text-transform:capitalize}.section-type.vegetative{color:#155724}.section-type.flowering{color:#721c24}.section-type.hanging{color:#856404}.section-type.decontamination{color:#0c5460}.section-type.curing{color:#383d41}.nav-button{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border:none;border-radius:20px;cursor:pointer;font-weight:600;padding:10px 20px;transition:transform .2s}.nav-button:hover:not(:disabled){transform:scale(1.05)}.nav-button:disabled{cursor:not-allowed;opacity:.5}.current-plant-banner{align-items:center;background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 20px;transition:transform .2s}.current-plant-banner:hover{transform:translateY(-2px)}.plant-strain{color:#155724;font-size:1.3rem;font-weight:700}.view-lifecycle{color:#28a745;font-weight:600}.filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filter-bar span{color:#333;font-weight:600}.filter-btn{background:#fff;border:2px solid #ddd;border-radius:20px;cursor:pointer;padding:8px 16px;transition:all .2s}.filter-btn.active{background:linear-gradient(145deg,#9fe7f5,#75b9e7)}.filter-btn.active,.filter-btn:hover{border-color:#75b9e7}.content-layout{display:flex;gap:20px}.content-layout .week-schedule{flex:1 1}.content-layout.full-width .full-content{width:100%}.full-content{display:flex;flex-direction:column;gap:20px}.static-section{background:#fff;border:1px solid #ddd;border-radius:10px;padding:20px}.static-section h3{border-bottom:2px solid #75b9e7;color:#333;font-size:1.2rem;margin:0 0 15px;padding-bottom:10px}.stats-panel{border-top:none;margin-top:0;padding-top:0}.static-section.stats-panel{padding:20px}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.stats-header h3{color:#333;margin:0}.compare-label{background:#e9ecef;border-radius:15px;color:#666;font-size:.9rem;padding:4px 10px}.metrics-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.metric-card{background:#f8f9fa;border:1px solid #ddd;border-radius:8px;padding:15px;text-align:center}.metric-card.complex{text-align:left}.metric-label{color:#666;font-size:.85rem;font-weight:600;margin-bottom:8px}.metric-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.metric-row .period{color:#888;font-size:.8rem;width:40px}.metric-row .metric-value{font-size:1.1rem}.metric-row .metric-previous{font-size:.75rem;margin:0}.metric-value{color:#333;font-size:1.5rem;font-weight:700}.metric-value .trend{font-size:.9rem;margin-left:4px}.metric-value .trend.up{color:#28a745}.metric-value .trend.down{color:#dc3545}.metric-value .trend.same{color:#6c757d}.metric-previous{color:#999;font-size:.8rem;margin-top:5px}.timeline-section{border-top:1px solid #eee;margin-top:20px;padding-top:15px}.timeline-section h4{color:#333;font-size:1rem;margin:0 0 10px}.stats-notes-section{background:#f8f9fa;border-radius:6px;margin-top:15px;padding:12px}.stats-notes-section h4{color:#333;font-size:.9rem;margin:0 0 8px}.stats-notes-section p{color:#666;font-size:.9rem;margin:0}.week-schedule{background:#fff;border:1px solid #ddd;border-radius:10px;padding:20px}.week-schedule h3{border-bottom:2px solid #75b9e7;color:#333;font-size:1.1rem;margin:0 0 15px;padding-bottom:10px}.schedule-list{display:flex;flex-direction:column;gap:8px}.schedule-day{align-items:center;background:#f8f9fa;border:1px solid #eee;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s}.schedule-day:hover{background:#e9ecef;border-color:#75b9e7}.schedule-day.active{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-color:#75b9e7}.schedule-day.has-entries{border-left:4px solid #28a745}.day-name{color:#333;font-weight:600}.day-date{color:#666;font-size:.9rem}.day-details{background:#fff;border:1px solid #ddd;border-radius:8px;margin-top:10px;padding:15px}.day-details h4{color:#333;margin:0 0 10px}.day-details .no-entries{color:#999;font-style:italic}.day-tasks{display:flex;flex-direction:column;gap:8px}.day-task{background:#f8f9fa;border-left:3px solid #75b9e7;border-radius:4px;padding:10px}.day-task .task-label{font-weight:500}.day-task .task-notes{color:#666;font-size:.9rem;margin-top:4px}.location-content{display:flex;flex-direction:column;gap:20px}.no-data{color:#666;font-style:italic;padding:40px;text-align:center}.entry-card{background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 2px 4px #0000000d;padding:20px}.entry-header{align-items:center;border-bottom:1px solid #eee;display:flex;gap:20px;margin-bottom:15px;padding-bottom:15px}.entry-date{color:#333;font-weight:600}.entry-week{background:#e9ecef;border-radius:15px;font-size:.9rem;padding:4px 10px}.entry-plant{color:#28a745;cursor:pointer;font-weight:600}.entry-plant:hover{text-decoration:underline}.entry-section{border-top:1px solid #eee;margin-top:15px;padding-top:15px}.entry-section h3{color:#333;font-size:1.1rem;margin:0 0 15px}.timeline-list{display:flex;flex-direction:column;gap:10px}.stats-notes{color:#666;font-style:italic;margin-top:10px}.nutrients-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.nutrient-item{background:#f8f9fa;border:1px solid #ddd;border-radius:5px;cursor:pointer;padding:10px 15px;transition:all .2s}.nutrient-item.selected,.nutrient-item:hover{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-color:#75b9e7}.nutrient-image-container{margin-top:15px;text-align:center}.nutrient-image-container img{border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:300px}.pest-grid{grid-gap:15px;gap:15px}.pest-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:15px}.pest-item img{height:80px;object-fit:contain;width:80px}.pest-item a{color:#75b9e7;text-decoration:none}.pest-item a:hover{text-decoration:underline}.images-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.images-grid img{aspect-ratio:1;border-radius:8px;cursor:pointer;object-fit:cover;transition:transform .2s;width:100%}.images-grid img:hover{transform:scale(1.05)}@media (max-width:1024px){.content-layout{flex-direction:column}.content-layout.with-sidebar .week-schedule{flex:1 1}.sidebar-content{flex:1 1;max-height:none}}@media (max-width:768px){.location-header{flex-direction:column;gap:15px}.entry-header{align-items:flex-start;flex-direction:column;gap:10px}.current-plant-banner{flex-direction:column;gap:10px;text-align:center}.filter-bar{justify-content:center}}.plant-detail-page{margin:0 auto;max-width:1200px;padding:20px}.plant-header{align-items:center;display:flex;gap:20px;margin-bottom:20px}.back-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:8px;cursor:pointer;padding:10px 20px;transition:all .2s}.back-btn:hover{background:#e9ecef}.plant-info h1{font-size:2rem;margin:0}.plant-info .plant-id{color:#666;font-size:1rem}.tabs{border-bottom:2px solid #ddd;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding-bottom:10px}.tab-btn{background:#f8f9fa;border:none;border-radius:8px 8px 0 0;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s}.tab-btn:hover{background:#e9ecef}.tab-btn.active{background:linear-gradient(145deg,#9fe7f5,#75b9e7)}.tab-content{background:#fff;border:1px solid #ddd;border-radius:10px;padding:20px}.lifecycle-summary{margin-bottom:30px}.lifecycle-summary h3{margin:0 0 15px}.summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.summary-item{background:#f8f9fa;border-radius:8px;padding:15px;text-align:center}.summary-item .label{color:#666;display:block;font-size:.9rem;margin-bottom:5px}.summary-item .value{font-size:1.2rem;font-weight:600}.summary-item .status-active{color:#28a745}.summary-item .status-harvested{color:#6c757d}.timeline-container h3{margin:0 0 20px}.timeline-entry{border:1px solid #ddd;border-radius:8px;margin-bottom:20px;overflow:hidden}.timeline-entry-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #ddd;display:flex;gap:15px;padding:12px 15px}.location-badge{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-radius:15px;font-weight:600;padding:4px 12px}.week-badge{background:#e9ecef;border-radius:15px;padding:4px 10px}.timeline-items{padding:15px}.timeline-item{border-left:4px solid #ddd;border-radius:5px;display:flex;gap:15px;margin-bottom:10px;padding:10px}.timeline-item.completed{background:#d4edda;border-left-color:#28a745}.timeline-item.issue{background:#f8d7da;border-left-color:#dc3545}.timeline-item.pending{background:#fff3cd;border-left-color:#ffc107}.timeline-label{flex:1 1;font-weight:600}.timeline-date{color:#666}.timeline-notes{color:#dc3545;font-size:.9rem}.nutrients-content h3{margin:0 0 20px}.nutrients-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:20px}.nutrient-card{background:#f8f9fa;border:2px solid #ddd;border-radius:8px;cursor:pointer;padding:15px;transition:all .2s}.nutrient-card.selected,.nutrient-card:hover{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-color:#75b9e7}.nutrient-detail{margin:20px 0;text-align:center}.nutrient-detail img{border-radius:8px;box-shadow:0 4px 12px #0000001a;max-width:300px}.stage-nutrients{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:15px}.stage-nutrients h4{margin:0 0 10px}.nutrients-list{display:flex;flex-wrap:wrap;gap:8px}.nutrient-tag{background:#fff;border:1px solid #ddd;border-radius:15px;font-size:.9rem;padding:5px 12px}.pest-content h3{margin:0 0 20px}.pest-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:30px}.pest-card{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:20px;text-align:center}.pest-card img{height:100px;object-fit:contain;width:100px}.pest-name{font-weight:600}.pest-card a{color:#75b9e7;text-decoration:none}.pest-card a:hover{text-decoration:underline}.pest-link{text-align:center}.pest-link button{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:12px 30px;transition:transform .2s}.pest-link button:hover{transform:scale(1.05)}.images-content h3{margin:0 0 20px}.no-images{color:#666;padding:40px;text-align:center}.gallery-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.gallery-item{border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.gallery-item img{aspect-ratio:1;object-fit:cover;width:100%}.image-info{background:#f8f9fa;display:flex;font-size:.9rem;justify-content:space-between;padding:10px}@media (max-width:768px){.summary-grid{grid-template-columns:1fr}.tabs{justify-content:center}.timeline-entry-header{flex-wrap:wrap}}.about-page{min-height:calc(100vh - 80px);padding:2rem}.about-container{margin:0 auto;max-width:1000px}.about-section{margin-bottom:3rem}.about-section h1{color:#333;font-size:2.5rem;margin-bottom:1rem}.about-section h2{border-bottom:3px solid #5cb85c;color:#333;font-size:1.8rem;margin-bottom:1rem;padding-bottom:.5rem}.about-section p{color:#666;font-size:1.1rem;line-height:1.8;margin-bottom:1rem}.process-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.5rem}.process-item{background:#f8f9fa;border-left:4px solid #5cb85c;border-radius:8px;padding:1.5rem}.process-item h3{color:#333;margin-bottom:.5rem}.process-item p{color:#666;font-size:.95rem;margin:0}.contact-section{margin-top:3rem}.contact-section h2{border-bottom:3px solid #5cb85c;color:#333;font-size:1.8rem;margin-bottom:1.5rem;padding-bottom:.5rem}.contact-container{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1fr 1fr}.contact-form{background:#f8f9fa;border-radius:8px;padding:2rem}.contact-form .form-group{margin-bottom:1.25rem}.contact-form label{color:#333;display:block;font-weight:500;margin-bottom:.5rem}.contact-form input,.contact-form textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:1rem;padding:.75rem;width:100%}.contact-form input:focus,.contact-form textarea:focus{border-color:#5cb85c;outline:none}.contact-form .submit-btn{background:#5cb85c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:background .2s}.contact-form .submit-btn:hover{background:#4a9a4a}.contact-info{padding:1rem}.contact-info h3{color:#333;margin-bottom:1rem}.contact-info>p{color:#666;line-height:1.6;margin-bottom:1.5rem}.info-item{background:#f8f9fa;border-radius:4px;display:flex;flex-direction:column;margin-bottom:1rem;padding:1rem}.info-item strong{color:#333;margin-bottom:.25rem}.info-item span{color:#666}@media (max-width:768px){.contact-container{grid-template-columns:1fr}.about-section h1{font-size:2rem}.process-grid{grid-template-columns:1fr}}.password-protection{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);display:flex;justify-content:center;min-height:100vh;padding:20px}.password-container{background:#fffffff2;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;max-width:420px;padding:50px 40px;text-align:center;width:100%}.password-header h1{color:#333;font-size:2.2rem;font-weight:700;margin:0 0 10px}.password-header p{color:#666;font-size:1rem;margin:0 0 30px}.password-form{display:flex;flex-direction:column;gap:20px}.password-input-group{position:relative}.password-input{border:2px solid #e0e0e0;border-radius:10px;box-sizing:border-box;font-size:1rem;padding:16px 20px;transition:border-color .3s,box-shadow .3s;width:100%}.password-input:focus{border-color:#75b9e7;box-shadow:0 0 0 4px #75b9e733;outline:none}.password-submit-btn{background:linear-gradient(145deg,#00b4d8,#0077b6);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px 24px;transition:transform .2s,box-shadow .2s}.password-submit-btn:hover:not(:disabled){box-shadow:0 8px 20px #0077b64d;transform:translateY(-2px)}.password-submit-btn:disabled{cursor:not-allowed;opacity:.7}.animated-circle-container{align-items:center;display:flex;height:80px;justify-content:center;margin-top:10px}.animated-circle{animation:spin 3s linear infinite reverse,bounce 2s ease-in-out infinite,glow 4s ease-in-out infinite;border-color:#00b4d8 #0077b6 #00b4d84d #0000;border-radius:50%;border-style:solid;border-width:3px;box-shadow:0 0 15px #00b4d866;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:rotate(0deg) translateY(0);transform:rotate(var(--rotation,0deg)) translateY(0)}25%{transform:rotate(0deg) translateY(-4px);transform:rotate(var(--rotation,0deg)) translateY(-4px)}50%{transform:rotate(0deg) translateY(0);transform:rotate(var(--rotation,0deg)) translateY(0)}75%{transform:rotate(0deg) translateY(-2px);transform:rotate(var(--rotation,0deg)) translateY(-2px)}}@keyframes glow{0%,to{box-shadow:0 0 15px #00b4d866,0 0 30px #0077b633}25%{box-shadow:0 0 20px #00b4d899,0 0 40px #0077b64d}50%{box-shadow:0 0 12px #00b4d84d,0 0 25px #0077b626}75%{box-shadow:0 0 25px #00b4d8b3,0 0 50px #0077b666}}.password-error{background:#dc35451a;border-radius:8px;color:#dc3545;font-size:.9rem;padding:10px}.password-footer{border-top:1px solid #eee;margin-top:30px;padding-top:20px}.password-footer p{color:#999;font-size:.85rem;margin:0}@media (max-width:480px){.password-container{padding:40px 25px}.password-header h1{font-size:1.8rem}}.admin-page{margin:0 auto;max-width:1400px;padding:20px}.admin-page.landscape{box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;min-height:calc(100vh - 80px);padding:15px 30px;width:100%}.admin-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.admin-header h1{color:#333;margin:0}.history-toggle{background:#f8f9fa;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s}.history-toggle:hover{background:#e9ecef}.history-toggle.active{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-color:#75b9e7}.day-navigation{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;display:flex;gap:20px;justify-content:space-between;margin-bottom:25px;padding:15px 20px}.nav-btn{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:transform .2s,box-shadow .2s}.nav-btn:hover{box-shadow:0 4px 12px #75b9e74d;transform:scale(1.05)}.current-day-display{flex:1 1;text-align:center}.current-day-display h2{color:#333;font-size:1.5rem;margin:0 0 5px}.weekend-notice{background:#ffc107;border-radius:20px;color:#333;display:inline-block;font-size:.85rem;font-weight:500;padding:4px 12px}.admin-content-landscape{width:100%}.admin-content-landscape,.landscape-form{display:flex;flex:1 1;flex-direction:column}.landscape-form{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.form-columns{display:flex;flex:1 1;flex-direction:row;gap:20px;width:100%}.form-column{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow-y:auto}.left-column{flex:1 1}.right-column{flex:2 1}.form-section{border-bottom:1px solid #eee;padding:15px}.form-section:last-of-type{border-bottom:none}.form-section h2{color:#333;font-size:1.2rem;margin:0 0 15px}.scheduled-tasks-section{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:10px;margin:10px}.scheduled-tasks-section h2{color:#2e7d32}.form-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:#666;font-size:.9rem;font-weight:600}.form-group input,.form-group select{border:1px solid #ddd;border-radius:8px;font-size:1rem;padding:12px}.form-group input:focus,.form-group select:focus{border-color:#75b9e7;outline:none}.task-category{margin-bottom:20px}.task-category:last-child{margin-bottom:0}.task-category h3{color:#666;font-size:.95rem;font-weight:600;margin:0 0 10px}.tasks-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.task-item{align-items:center;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:10px 12px;transition:all .2s}.task-item:hover{background:#f0f8ff;border-color:#75b9e7}.task-item.selected{background:linear-gradient(145deg,#d4edda,#c3e6cb);border-color:#28a745}.task-item.scheduled{background:#fff;border-color:#81c784}.task-item.scheduled.selected{background:linear-gradient(145deg,#a5d6a7,#81c784);border-color:#2e7d32}.task-item input[type=checkbox]{cursor:pointer;height:18px;width:18px}.task-label{font-size:.95rem}.photo-upload{margin-bottom:15px}.photo-input{display:none}.photo-upload-btn{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-radius:8px;cursor:pointer;display:inline-block;font-weight:500;padding:12px 24px;transition:transform .2s}.photo-upload-btn:hover{transform:scale(1.02)}.photo-previews{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.photo-preview{aspect-ratio:1;border-radius:8px;overflow:hidden;position:relative}.photo-preview img{height:100%;object-fit:cover;width:100%}.remove-photo{background:#dc3545e6;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:12px;font-weight:700;height:24px;position:absolute;right:5px;top:5px;width:24px}textarea{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:1rem;min-height:100px;padding:12px;resize:vertical;width:100%}textarea:focus{border-color:#75b9e7;outline:none}.submit-btn{background:linear-gradient(145deg,#28a745,#20c997);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin:20px 0;padding:15px;transition:transform .2s;width:100%}.submit-btn:hover{transform:scale(1.02)}.report-history{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.report-history h2{color:#333;margin:0 0 20px}.no-reports{color:#666;padding:40px;text-align:center}.reports-list{display:flex;flex-direction:column;gap:15px}.landscape-reports{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.report-card{background:#f8f9fa;border-left:4px solid #75b9e7;border-radius:10px;padding:15px}.report-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:12px}.report-location{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border-radius:5px;font-size:1.1rem;font-weight:700;padding:4px 12px}.report-date{color:#666}.delete-report{background:#fff;border:1px solid #dc3545;border-radius:5px;color:#dc3545;cursor:pointer;font-size:.85rem;margin-left:auto;padding:5px 12px}.delete-report:hover{background:#dc3545;color:#fff}.report-tasks{margin-bottom:10px}.report-tasks ul{margin:5px 0 0 20px;padding:0}.report-tasks li{color:#555;margin:3px 0}.report-notes{color:#555;margin-bottom:10px}.report-photos{color:#666;font-style:italic;margin-bottom:10px}.report-submitted{color:#999;font-size:.85rem}@media (max-width:992px){.form-columns{flex-direction:column}.left-column,.right-column{flex:1 1}.day-navigation{flex-direction:column;text-align:center}.nav-btn{width:100%}}@media (max-width:768px){.form-grid,.tasks-grid{grid-template-columns:1fr}.admin-header{align-items:flex-start;flex-direction:column}.landscape-reports{grid-template-columns:1fr}}.facility-page{margin:0 auto;max-width:1000px;padding:20px}.facility-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.facility-header h1{color:#333;margin:0}.month-selector{align-items:center;display:flex;gap:10px}.month-selector label{color:#666;font-weight:500}.month-selector select{background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:16px;padding:10px 15px}.stats-bar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px;padding:20px 25px}.stat-item,.stats-bar{align-items:center;display:flex}.stat-item{gap:10px}.stat-label{color:#fffc;font-size:14px}.stat-value{color:#fff;font-size:16px;font-weight:600}.progress-bar{background:#ffffff4d;border-radius:5px;height:10px;overflow:hidden;width:150px}.progress-fill{background:#fff;border-radius:5px;height:100%;transition:width .3s ease}.tasks-container{display:flex;flex-direction:column;gap:25px}.task-category{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.task-category h2{border-bottom:2px solid #eee;color:#333;font-size:18px;margin:0 0 15px;padding-bottom:10px}.task-list{gap:10px}.task-list,.task-row{display:flex;flex-direction:column}.task-row{background:#f9f9f9;border-radius:8px;gap:8px;padding:15px;transition:all .2s ease}.task-row.completed{background:#e8f5e9}.task-main{align-items:center;display:flex;gap:12px}.task-checkbox{cursor:pointer;position:relative}.task-checkbox input{opacity:0;position:absolute}.task-checkbox .checkmark{align-items:center;border:2px solid #ccc;border-radius:6px;display:flex;height:24px;justify-content:center;transition:all .2s ease;width:24px}.task-checkbox input:checked+.checkmark{background:#4caf50;border-color:#4caf50}.task-checkbox input:checked+.checkmark:after{color:#fff;content:"\2713";font-size:14px;font-weight:700}.task-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.task-label{color:#333;font-weight:500}.task-row.completed .task-label{color:#666;text-decoration:line-through}.completion-date{color:#4caf50;font-size:12px}.task-notes input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.task-notes input:focus{border-color:#667eea;outline:none}@media (max-width:768px){.facility-header,.stats-bar{align-items:flex-start;flex-direction:column}.progress-bar{width:100%}}.qr-scanner-overlay{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.qr-scanner-modal{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000080;max-width:500px;overflow:hidden;width:100%}.qr-scanner-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.qr-scanner-header h2{color:#333;font-size:1.3rem;margin:0}.qr-close-btn{align-items:center;background:#f0f0f0;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;transition:background .2s;width:36px}.qr-close-btn:hover{background:#e0e0e0}.qr-scanner-body{padding:20px}.qr-video-container{aspect-ratio:4/3;background:#000;border-radius:12px;overflow:hidden;position:relative}.qr-video{height:100%;object-fit:cover;width:100%}.qr-scan-frame{border:3px solid #00b4d8;border-radius:12px;box-shadow:0 0 0 9999px #00000080;height:200px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:200px}.qr-scan-frame:after,.qr-scan-frame:before{border:4px solid #00b4d8;content:"";height:30px;position:absolute;width:30px}.qr-scan-frame:before{border-bottom:none;border-right:none;border-top-left-radius:12px;left:-3px;top:-3px}.qr-scan-frame:after{border-bottom-right-radius:12px;border-left:none;border-top:none;bottom:-3px;right:-3px}.qr-error{background:#dc35451a;border-radius:12px;color:#dc3545;padding:40px;text-align:center}.qr-scanner-footer{border-top:1px solid #eee;padding:20px;text-align:center}.qr-scanner-footer p{color:#666;font-size:.9rem;margin:0 0 15px}.qr-capture-btn{background:linear-gradient(145deg,#00b4d8,#0077b6);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 30px;transition:transform .2s}.qr-capture-btn:hover:not(:disabled){transform:translateY(-2px)}.qr-capture-btn:disabled{cursor:not-allowed;opacity:.5}.home-page{margin:0 auto;max-width:1400px;padding:20px}.home-header{margin-bottom:30px;text-align:center}.home-header h1{color:#333;font-size:2.5rem;margin-bottom:10px}.home-header p{color:#666;font-size:1.1rem}.search-container{margin:0 auto 40px;max-width:800px}.search-container form{display:flex;flex-wrap:wrap;gap:10px}.search-input{border:2px solid #ddd;border-radius:8px;flex:1 1;font-size:1rem;min-width:200px;padding:12px 16px}.search-input:focus{border-color:#75b9e7;outline:none}.search-btn{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border:none;border-radius:8px;cursor:pointer;font-size:1rem;padding:12px 24px;transition:transform .2s}.search-btn:hover{transform:scale(1.05)}.scan-btn{align-items:center;background:linear-gradient(145deg,#00b4d8,#0077b6);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;gap:8px;padding:12px 20px;transition:transform .2s}.scan-btn:hover{transform:scale(1.05)}.sections-landscape{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:wrap;gap:30px;justify-content:center}.section-group{flex:1 1;min-width:0}.section-group h2{border-bottom:2px solid #75b9e7;color:#333;font-size:1.1rem;margin-bottom:15px;padding-bottom:10px;text-align:center}.location-cards{grid-gap:12px;display:grid;gap:12px;justify-content:center;justify-items:center}.veg-section{flex:0 0 auto;width:130px}.veg-grid{grid-template-columns:1fr}.flower-section{flex:1 1;min-width:300px}.flower-grid{grid-auto-flow:column;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,auto)}.hang-section{flex:0 0 auto;width:130px}.hang-grid{grid-template-columns:1fr}.decon-section{flex:0 0 auto;width:150px}.decon-grid{grid-template-columns:1fr}.curing-section{flex:1 1;min-width:300px}.curing-grid{grid-auto-flow:column;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,auto)}.location-card{align-items:center;background:#fff;border:2px solid #ddd;border-radius:10px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:100px;justify-content:center;overflow:hidden;padding:10px;text-align:center;transition:all .2s;width:100px}.location-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-3px)}.location-card.occupied{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-color:#28a745}.location-card.empty{background:#f8f9fa;border-color:#ddd}.location-name{color:#333;font-size:1rem;font-weight:700;margin-bottom:4px}.plant-info{display:flex;flex-direction:column;gap:4px}.strain-name{color:#28a745;font-size:.7rem;font-weight:600;line-height:1.1}.plant-id{color:#666;font-size:.65rem}.empty-label{color:#999;font-size:.7rem;font-style:italic}.quick-links{display:flex;gap:20px;justify-content:center;margin-top:40px}.quick-link-btn{background:linear-gradient(145deg,#9fe7f5,#75b9e7);border:none;border-radius:8px;cursor:pointer;font-size:1rem;padding:12px 30px;transition:transform .2s}.quick-link-btn:hover{transform:scale(1.05)}@media (max-width:1200px){.sections-landscape{flex-direction:column}.decon-section,.hang-section,.veg-section{width:100%}.decon-grid,.hang-grid,.veg-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.curing-section,.flower-section{width:100%}}@media (max-width:768px){.curing-grid,.flower-grid{grid-template-columns:repeat(2,1fr)}.quick-links,.search-container form{flex-direction:column}.quick-links{align-items:center}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Arial,sans-serif;margin:0;padding:0}.app-container{display:flex;flex-direction:column;min-height:100vh}html{font-size:16px}@media (max-width:768px){html{font-size:14px}}@media (max-width:480px){html{font-size:12px}}.btn,.submit-btn,button{min-height:44px;min-width:44px;touch-action:manipulation}body,html{overflow-x:hidden}footer{background-color:#333;color:#fff;padding:20px;text-align:center}.container{margin:0 auto;padding:0 1rem;width:100%}.row{display:flex;flex-wrap:wrap;margin:0 -.5rem}.col{flex:1 1;padding:0 .5rem}.col-12{width:100%}.col-6{width:50%}.col-4{width:33.333%}.col-3{width:25%}@media (max-width:768px){.container{padding:0 .75rem}.col-3,.col-4,.col-6{width:100%}.row{margin:0 -.25rem}.col{margin-bottom:1rem;padding:0 .25rem}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}@media (max-width:768px){.text-left-mobile{text-align:left}.text-center-mobile{text-align:center}.text-right-mobile{text-align:right}}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.m-1{margin:.5rem}.m-2{margin:1rem}.m-3{margin:1.5rem}.hide-mobile{display:block}.show-mobile{display:none}@media (max-width:768px){.hide-mobile{display:none}.show-mobile{display:block}}
/*# sourceMappingURL=main.aadfa692.css.map*/