*{box-sizing:border-box}body{margin:0;background:#f4f7f8;color:#172536;font-family:system-ui,sans-serif}.wrap{max-width:1120px;margin:auto;padding:32px 20px 60px}header{display:flex;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow,.heading span,.hero span{font-size:12px;letter-spacing:.14em;font-weight:800;color:#71808d}h1{font-size:42px;margin:5px 0}header p{margin:0;color:#657483}.back{text-decoration:none;color:#365c7d;font-weight:700;padding:10px 14px;background:#fff;border-radius:12px;border:1px solid #e1e8ec;height:max-content}.hero,.panel,.card{background:#fff;border:1px solid #e2e9ed;border-radius:20px;box-shadow:0 8px 30px #142d4110}.hero{padding:28px;display:grid;grid-template-columns:1fr 1.5fr;gap:35px;align-items:center}.hero strong{display:block;font-size:58px}.hero small{color:#73808c}.progress{height:18px;background:#edf1e9;border-radius:20px;overflow:hidden;margin-bottom:12px}.progress i{display:block;height:100%;background:#77a94c;border-radius:20px}.progressbox b{display:block;font-size:20px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.card{padding:18px}.card span{display:block;color:#73808d;font-size:12px;font-weight:750}.card strong{display:block;font-size:25px;margin-top:5px}.card small{color:#7a8792}.panel{padding:24px;margin-top:18px}.heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.heading h2{margin:3px 0}.plants{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}.plant{border:1px solid #e4eaed;border-radius:15px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:12px}.plant h3{margin:0 0 4px}.plant p{margin:0;color:#71808c;font-size:13px}.badge{padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800;background:#edf1f3;height:max-content}.badge.active{background:#e7f4dc;color:#4e762e}.badge.past{color:#8a9298}table{width:100%;border-collapse:collapse;margin-top:14px}th,td{text-align:right;padding:11px 9px;border-bottom:1px solid #e7ecef}th:first-child,td:first-child{text-align:left}th{font-size:12px;color:#74818d}.tablewrap{overflow:auto}footer{text-align:center;color:#7a8791;font-size:12px;margin-top:25px}@media(max-width:800px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.plants{grid-template-columns:1fr}}@media(max-width:480px){header{display:block}.back{display:inline-block;margin-top:15px}.grid{grid-template-columns:1fr}}.smallbtn,.actions button{border:0;border-radius:10px;padding:9px 13px;font-weight:750;cursor:pointer}.smallbtn{background:#edf2f4;color:#36546a}.obs-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.obs-form label{font-size:12px;font-weight:750;color:#667786}.obs-form input,.obs-form select,.loginbox input{width:100%;margin-top:5px;padding:10px;border:1px solid #dce4e8;border-radius:10px;background:#fff}.obs-form .wide{grid-column:1/-1}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions button:first-child{background:#567f36;color:#fff}.observations{margin-top:15px}.obs-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 0;border-bottom:1px solid #e7ecef}.obs-row b{display:block}.obs-row small{color:#71808c}.obs-tools button{border:0;background:#edf2f4;border-radius:8px;padding:6px 9px;margin-left:5px;cursor:pointer}.modal{position:fixed;inset:0;background:#17253688;display:grid;place-items:center;padding:20px;z-index:50}.modal[hidden]{display:none}.loginbox{width:min(400px,100%);background:#fff;padding:24px;border-radius:18px}.loginbox h2{margin-top:0}.loginbox small{display:block;color:#a33;margin-top:8px}@media(max-width:700px){.obs-form{grid-template-columns:1fr}}
.flight-grid,.veg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.flight-card,.veg-card{border:1px solid #e4eaed;border-radius:15px;padding:16px;background:#f9fbfc}
.flight-card span,.veg-card span{display:block;font-size:12px;color:#71808d;font-weight:800}
.flight-card strong,.veg-card strong{display:block;font-size:22px;margin-top:4px}
.flight-card small,.veg-card small{display:block;color:#74818d;margin-top:5px;line-height:1.35}
.flight-state{font-size:30px!important}
.flight-good{color:#4d7c2f}.flight-mid{color:#a06b00}.flight-bad{color:#a33d3d}
.obs-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.obs-summary .card{box-shadow:none}
@media(max-width:800px){.flight-grid,.veg-grid{grid-template-columns:repeat(2,1fr)}.obs-summary{grid-template-columns:1fr}}
@media(max-width:480px){.flight-grid,.veg-grid{grid-template-columns:1fr}}
