/* Fertilizer application modal */
.fert-modal-overlay {
  display:none; position:fixed; inset:0; z-index:1000;
  background:rgba(15,23,42,.55); backdrop-filter:blur(3px);
  align-items:center; justify-content:center;
}
.fert-modal-overlay.open { display:flex; }
.fert-modal {
  background:#fff; border-radius:14px; width:520px; max-width:95vw;
  max-height:90vh; display:flex; flex-direction:column;
  box-shadow:0 24px 60px rgba(0,0,0,.28);
  overflow:hidden;
}
.fert-modal-hdr {
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 20px 14px; border-bottom:1px solid var(--border);
  background:var(--navy);
}
.fert-modal-title {
  font-size:14px; font-weight:800; color:#fff; letter-spacing:.01em;
}
.fert-modal-close {
  background:rgba(255,255,255,.12); border:none; color:#fff;
  width:26px; height:26px; border-radius:50%; cursor:pointer;
  font-size:14px; display:flex; align-items:center; justify-content:center;
  transition:background .15s;
}
.fert-modal-close:hover { background:rgba(255,255,255,.25); }
.fert-modal-body {
  padding:18px 20px; overflow-y:auto; display:flex; flex-direction:column; gap:16px;
}
.fert-field-label {
  font-size:10.5px; font-weight:700; color:var(--g2);
  text-transform:uppercase; letter-spacing:.06em; margin-bottom:6px;
}
.fert-zone-grid {
  display:grid; grid-template-columns:repeat(6,1fr); gap:4px;
}
.fert-zone-btn {
  aspect-ratio:1; border-radius:5px; border:1.5px solid var(--border);
  background:var(--cream); font-size:9px; font-weight:700; color:var(--g2);
  cursor:pointer; transition:all .12s; padding:0;
}
.fert-zone-btn:hover { border-color:var(--teal); color:var(--teal); }
.fert-zone-btn.selected { background:var(--teal); border-color:var(--teal); color:#fff; }
.fert-zone-actions {
  display:flex; gap:10px; margin-top:4px;
}
.fert-zone-action {
  font-size:10px; color:var(--teal); cursor:pointer; font-weight:600;
  background:none; border:none; padding:0; text-decoration:underline;
}
.fert-select, .fert-input {
  width:100%; padding:8px 10px; border-radius:7px;
  border:1.5px solid var(--border); font-size:12px; color:var(--g1);
  background:#fff; outline:none; transition:border-color .15s; box-sizing:border-box;
}
.fert-select:focus, .fert-input:focus { border-color:var(--teal); }
.fert-row { display:flex; gap:12px; }
.fert-row > div { flex:1; }
.fert-modal-footer {
  padding:12px 20px; border-top:1px solid var(--border);
  display:flex; justify-content:flex-end; gap:10px;
}
.fert-btn-cancel {
  padding:8px 18px; border-radius:8px; border:1.5px solid var(--border);
  background:#fff; font-size:12px; font-weight:600; color:var(--g2); cursor:pointer;
  transition:background .15s;
}
.fert-btn-cancel:hover { background:var(--cream); }
.fert-btn-submit {
  padding:8px 20px; border-radius:8px; border:none;
  background:var(--teal); color:#fff; font-size:12px; font-weight:700;
  cursor:pointer; transition:background .15s;
}
.fert-btn-submit:hover { background:#1a8a8f; }
.fert-confirm {
  display:none; flex-direction:column; align-items:center;
  gap:8px; padding:24px 0; text-align:center;
}
.fert-confirm.show { display:flex; }
.fert-confirm-icon { font-size:32px; }
.fert-confirm-title { font-size:14px; font-weight:800; color:var(--navy); }
.fert-confirm-sub { font-size:11px; color:var(--g2); line-height:1.5; max-width:340px; }
.fert-log-btn {
  margin-top:6px; background:none; border:none; padding:8px 18px;
  border-radius:8px; border:1.5px solid var(--teal); color:var(--teal);
  font-size:11px; font-weight:700; cursor:pointer; transition:background .15s;
}
.fert-log-btn:hover { background:rgba(45,160,166,.08); }

@media (max-width: 480px) {
  .fert-modal-overlay.open { align-items:flex-end; }
  .fert-modal { width:100%; border-radius:14px 14px 0 0; }
  .fert-row { flex-direction:column; }
}
