:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172c25;background:#f4f7f4;font-size:16px;--green:#174d3d;--lime:#dbea9f;--line:#dde5df;--muted:#68776e;--white:#fff}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:46px;border:0;border-radius:10px;background:var(--green);color:white;padding:12px 18px;font-weight:600}button:hover{filter:brightness(.96)}button:disabled{opacity:.5;cursor:wait}a{color:var(--green)}input,select,textarea{width:100%;min-height:50px;background:#fff;border:1px solid #bdcbbf;border-radius:10px;padding:12px;color:#172c25;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #174d3d18}textarea{resize:vertical;min-height:88px}label{display:block;font-size:14px;font-weight:600;line-height:1.5;margin:20px 0 8px}label input,label select,label textarea{margin-top:8px;font-size:16px;font-weight:400}h1{font-size:30px;letter-spacing:-1px;line-height:1.18;margin:14px 0}h2{font-size:22px;letter-spacing:-.5px;margin:8px 0 20px}h3{font-size:17px;margin:0 0 8px}p{line-height:1.6;color:var(--muted)}small,.small{font-size:13px;line-height:1.5;color:var(--muted)}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1150px)/2));background:white;position:sticky;top:0;z-index:20}.brand{font-size:26px;font-weight:800;letter-spacing:-1px;text-decoration:none;display:flex;align-items:center;gap:10px}.brand span{display:grid;place-items:center;width:36px;height:40px;border-radius:11px;background:var(--green);color:var(--lime);font-size:25px;font-weight:500}.profile-button{border:1px solid var(--line);background:white;color:var(--green);display:flex;gap:10px;align-items:center;padding:7px 10px}.avatar{background:#e8efdc;border-radius:50%;width:32px;height:32px;display:inline-grid;place-items:center;font-size:13px;font-weight:700;flex-shrink:0}.appnav{display:flex;gap:8px}.appnav button{background:transparent;color:var(--muted)}.appnav .active{background:#eaf0e6;color:var(--green)}.main{max-width:1100px;margin:0 auto;padding:32px 28px 100px}.main.form-width{max-width:740px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#607b51}.row{display:flex;gap:12px;align-items:center;justify-content:space-between}.wrap{flex-wrap:wrap}.secondary{background:white;color:var(--green);border:1px solid #cbd8cd}.quiet{background:transparent;color:var(--green);padding:10px 0;text-align:left}.danger{color:#9e2c24;background:#fff1ef}.full{width:100%}.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:20px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;margin-top:24px}.group-card{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden}.group-card .body{padding:24px}.group-card h2{margin:16px 0 8px}.group-card .card-foot{border-top:1px solid var(--line);padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.group-icon{width:42px;height:42px;background:#edf3dd;display:grid;place-items:center;border-radius:11px;color:var(--green)}.icon{width:22px;height:22px;flex-shrink:0}.subtle{color:var(--muted)}.pill{background:#eef2e9;color:#496038;font-size:12px;padding:5px 9px;border-radius:6px;white-space:nowrap}.pill.done{background:#e0f2e8;color:#166145}.sync{border:0;background:transparent;color:var(--muted);font-size:12px;min-height:34px;padding:5px 0;font-weight:400;max-width:70%;text-align:right}.empty{text-align:center;padding:40px 22px;border:1px dashed #b6c8b8;border-radius:14px;margin-top:24px}.empty .icon{width:32px;height:32px}.empty p{max-width:330px;margin:10px auto 20px}.farmer-row{display:flex;align-items:center;gap:12px;width:100%;background:white;color:inherit;padding:18px;text-align:left;border:1px solid var(--line);margin-bottom:10px}.farmer-row .grow{flex:1}.farmer-row small{display:block;margin-top:4px}.badge-count{font-size:14px;color:var(--muted);font-weight:400}.steps{display:flex;gap:5px;margin:24px 0 12px}.step{padding:0;background:#dfe7df;height:5px;min-height:5px;border-radius:3px;flex:1}.step.current,.step.past{background:var(--green)}.step-caption{font-size:13px;color:var(--muted);margin-bottom:25px}.sticky-actions{position:sticky;bottom:0;background:#f4f7f4ed;border-top:1px solid var(--line);padding:16px 0;display:flex;justify-content:space-between;gap:12px;backdrop-filter:blur(8px);z-index:10}.compound{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:10px;align-items:end}.compound label{margin:0}.compound input,.compound select{margin-top:8px}.mini-card{border:1px solid var(--line);border-radius:12px;padding:18px;margin:15px 0;background:#fff}.record-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0eb;padding-bottom:12px;margin-bottom:16px}.record-top h3{margin:0}.map-button{width:100%;height:100px;background:#eff4eb;color:var(--green);border:1px dashed #adbfaa;display:flex;gap:12px;align-items:center;text-align:left;margin-top:10px}.map-button small{display:block;font-weight:400;margin-top:4px}.hint{font-size:13px;color:var(--muted);margin:8px 0}.notice{background:#edf3df;border-left:3px solid #729652;padding:14px 16px;font-size:14px;line-height:1.6;border-radius:4px;margin:15px 0}.error{color:#9d2929;line-height:1.5;font-size:14px}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-aside{background:var(--green);color:white;padding:65px;display:flex;flex-direction:column;justify-content:space-between}.login-aside .brand{color:white}.login-aside .brand span{background:#ffffff18}.login-aside h1{font-size:54px;max-width:460px;line-height:1.08}.login-aside p{color:#c6dac8;max-width:380px}.login-mark{border-top:1px solid #ffffff25;padding-top:24px;font-size:13px;color:#bed2bd}.login-content{display:flex;align-items:center;justify-content:center;padding:45px}.login-box{max-width:400px;width:100%}.login-box h1{font-size:32px}.login-box .primary{margin-top:24px}.login-footer{margin-top:28px;text-align:center;font-size:14px}.mobile-brand{display:none}.profile-card{padding:30px}.profile-heading{display:flex;gap:16px;align-items:center;margin-bottom:30px}.profile-heading .avatar{width:64px;height:64px;font-size:24px}.profile-list{margin:0}.profile-list dt{font-size:13px;color:var(--muted);margin-top:24px}.profile-list dd{margin:6px 0 0;font-size:17px;line-height:1.5}.search{max-width:340px;margin:22px 0}.admin-shell{display:grid;grid-template-columns:218px 1fr;min-height:100vh}.admin-sidebar{background:#133f33;color:white;padding:30px 18px;position:sticky;top:0;height:100vh}.admin-sidebar .brand{color:white;margin:0 12px 45px}.admin-sidebar button{display:flex;gap:12px;align-items:center;width:100%;text-align:left;background:transparent;color:#ccded2;margin:4px 0;font-weight:500}.admin-sidebar button.active{background:#dceba1;color:#193e31}.admin-sidebar .side-caption{font-size:12px;letter-spacing:1.8px;margin:20px 14px;color:#98b5a1}.admin-sidebar .side-bottom{position:absolute;bottom:28px;left:30px;right:20px;font-size:13px;color:#b4cabb;line-height:1.7}.admin-main{min-width:0;padding:36px 40px 60px;max-width:1600px}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-top p{margin:8px 0 0}.admin-top h1{margin:4px 0}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi{background:white;border:1px solid var(--line);border-radius:14px;padding:22px}.kpi.featured{background:var(--green);color:white}.kpi .label{font-size:13px;color:var(--muted)}.kpi.featured .label,.kpi.featured small{color:#c4d8c7}.kpi strong{font-size:35px;display:block;margin:16px 0 7px;font-weight:650;letter-spacing:-1px}.chart-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin:22px 0}.chart-panel{padding:24px;background:white;border-radius:14px;border:1px solid var(--line);min-width:0}.chart-title{font-size:17px;font-weight:650}.chart-sub{font-size:13px;color:var(--muted);margin:7px 0 24px}.bars{display:grid;gap:18px}.bar-label{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:7px}.bar-track{height:15px;border-radius:4px;background:#f0f4eb;overflow:hidden}.bar-fill{height:100%;background:#628268;border-radius:4px;min-width:2px}.bar-fill.lime{background:#c5d78c}.donut-wrap{display:flex;gap:26px;align-items:center;justify-content:center;min-height:190px}.donut{width:165px;height:165px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.donut-hole{width:122px;height:122px;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;flex-direction:column}.donut-hole strong{font-size:29px}.legend{display:grid;gap:13px;font-size:13px}.legend-row{display:flex;align-items:center;gap:8px}.swatch{width:9px;height:9px;border-radius:3px}.table-wrap{overflow:auto;border-radius:12px;border:1px solid var(--line);background:white}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th{font-size:12px;letter-spacing:.5px;color:var(--muted);background:#fafcf8;font-weight:600;padding:14px 18px;white-space:nowrap}td{padding:16px 18px;border-top:1px solid #edf0eb}td button{min-height:36px;padding:6px 10px;font-size:13px}td small{display:block}.filters{display:flex;gap:12px;margin-bottom:18px}.filters input{max-width:320px}.filters select{max-width:230px}.import-zone{border:1.5px dashed #afc2ae;padding:32px;border-radius:14px;text-align:center;margin:20px 0}.import-zone input{max-width:380px;margin-top:15px}.loading{padding:70px;text-align:center}.check-label{display:flex;align-items:flex-start;gap:12px;font-size:15px;font-weight:400;cursor:pointer}.check-label input{width:21px;min-height:21px;flex-shrink:0;margin:2px 0}.review-line{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #edf0eb;font-size:14px}.review-line span{color:var(--muted)}.review-line strong{text-align:right;overflow-wrap:anywhere}dialog{border:0;border-radius:18px;width:min(600px,calc(100% - 28px));max-height:90dvh;padding:25px;box-shadow:0 25px 100px #0003}dialog::backdrop{background:#19382c88;backdrop-filter:blur(3px)}dialog .dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px}dialog .dialog-head h2{margin:0}dialog .close{background:transparent;color:#526458;padding:8px 13px;font-size:23px}.map-canvas{height:330px;margin:14px 0;border-radius:12px}gmp-place-autocomplete{width:100%;margin-top:15px}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#163c2f;color:white;padding:13px 20px;border-radius:12px;z-index:100;max-width:90%;font-size:14px;box-shadow:0 8px 32px #0002;display:none}.negative-space{padding:28px 0}.mobile-nav{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.admin-gate{max-width:450px;margin:13vh auto;padding:28px}.admin-gate .brand{margin-bottom:40px}.admin-gate a.primary{display:block;text-align:center;background:var(--green);color:white;padding:15px;border-radius:10px;text-decoration:none;margin-top:25px}.disclosure{padding:14px;border:1px solid var(--line);border-radius:10px;margin:14px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.no-data{padding:36px 16px;text-align:center;color:var(--muted);font-size:14px}
@media(max-width:1000px){.admin-shell{grid-template-columns:175px 1fr}.admin-main{padding:26px 20px}.admin-sidebar{padding:25px 10px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid{grid-template-columns:1fr}.login-aside{padding:40px}.login-aside h1{font-size:42px}.donut-wrap{justify-content:flex-start}}
@media(max-width:650px){.topbar{height:65px;padding:0 18px}.topbar .appnav{display:none}.brand{font-size:24px}.brand span{width:31px;height:35px}.profile-button .profile-name{display:none}.profile-button{border:0;padding:5px}.main{padding:24px 18px 110px}h1{font-size:28px}.panel{padding:20px;border-radius:13px}.cards{grid-template-columns:1fr;gap:14px}.group-card .body{padding:22px}.main .heading-row{align-items:flex-start}.heading-row .secondary{font-size:14px;padding:10px 13px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid var(--line);padding:7px 10px max(7px,env(safe-area-inset-bottom));justify-content:space-around;z-index:30}.mobile-nav button{background:white;color:var(--muted);font-size:12px;font-weight:500;padding:5px 15px;display:flex;flex-direction:column;gap:4px;align-items:center;min-width:90px}.mobile-nav .active{color:var(--green);background:#eef4e8}.sticky-actions{bottom:70px;padding:12px 0}.compound{grid-template-columns:minmax(0,1fr) 112px}.login-page{display:block;background:white;min-height:100dvh}.login-aside{display:none}.mobile-brand{display:block;margin-bottom:50px}.login-content{padding:34px 24px}.login-box{max-width:420px}.login-box h1{font-size:30px}.login-box p{font-size:15px}.login-footer{margin-top:35px}.profile-card{padding:23px}.admin-shell{display:block}.admin-sidebar{position:static;height:auto;padding:18px;display:flex;gap:6px;overflow-x:auto;align-items:center}.admin-sidebar .brand{margin:0 12px 0 0;font-size:21px}.admin-sidebar button{width:auto;white-space:nowrap;margin:0;padding:10px;font-size:13px;min-height:44px}.admin-sidebar .brand span,.admin-sidebar .side-caption,.admin-sidebar .side-bottom,.admin-sidebar button .icon{display:none}.admin-main{padding:23px 16px}.admin-top{align-items:flex-start}.admin-top .secondary{font-size:13px;padding:10px}.admin-top h1{font-size:26px}.admin-top p{font-size:14px}.kpis{gap:10px}.kpi{padding:17px 14px}.kpi strong{font-size:29px;margin:12px 0 6px}.kpi .label{font-size:12px}.kpi small{font-size:12px}.chart-panel{padding:20px}.donut{width:140px;height:140px}.donut-hole{width:102px;height:102px}.donut-wrap{gap:18px}.filters{flex-direction:column}.filters input,.filters select{max-width:none}.admin-gate{margin:10vh 14px}.search{max-width:none}.record-top .quiet{font-size:13px}.step-caption{margin-bottom:20px}.review-line{gap:12px}}

.donut-wrap{gap:16px}.donut{width:140px;height:140px}.donut-hole{width:104px;height:104px}.legend{min-width:80px}.legend-row{white-space:nowrap}.disclosure li{margin:12px 0;font-size:14px;line-height:1.6}.disclosure code{overflow-wrap:anywhere}.sync{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Supplied brand artwork and narrow-screen form layout. */
.brand{display:inline-flex;flex-shrink:0;background:#fff;border-radius:9px;padding:7px;max-width:100%;line-height:0}
.brand img{display:block;width:166px;height:auto;max-width:100%;object-fit:contain}
.topbar{height:100px;gap:12px}.topbar .brand img{width:150px}
.admin-sidebar .brand{margin:0 0 30px}.admin-sidebar .brand img{width:166px}
.login-aside .brand{align-self:flex-start}.login-aside .brand img{width:250px}
.admin-gate .brand img{width:220px}
input,select,textarea,.compound>*,.row>*,.farmer-row .grow{min-width:0;max-width:100%}
.date-fields{grid-template-columns:minmax(0,1fr) minmax(140px,.65fr);align-items:start}
.date-fields input{display:block;min-width:0;width:100%}
input[type=month]{min-width:0;max-width:100%;display:block}
input[type=month]::-webkit-date-and-time-value{text-align:left;min-width:0}
@media(max-width:650px){
 .topbar{height:88px;padding:0 16px}.topbar .brand img{width:135px}
 .mobile-brand{margin-bottom:28px}.mobile-brand .brand img{width:210px}
 .date-fields{grid-template-columns:minmax(0,1fr);gap:18px}
 .admin-sidebar{flex-wrap:wrap;overflow:visible;gap:6px}
 .admin-sidebar .brand{margin:0 calc(100% - 145px) 8px 0;width:145px;flex-shrink:0}
 .admin-sidebar .brand img{width:131px}
 .admin-sidebar button{flex:1 1 auto;justify-content:center}
 .mini-card{padding:14px}.compound:not(.date-fields){grid-template-columns:minmax(0,1fr) minmax(104px,.8fr)}
 .profile-heading h2,.farmer-row strong{overflow-wrap:anywhere}
 .row{flex-wrap:wrap}.filters{min-width:0}.legend-row{white-space:normal}
 .donut-wrap{flex-wrap:wrap}.admin-top{flex-wrap:wrap}
}

.section-gap{margin-top:30px;line-height:1.5}.save-record{margin:0 0 15px}.cooperative-options{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.cooperative-options label{margin:8px 0;padding:8px 0;align-items:center}.mini-card .mini-card{padding:14px;background:#fafcf8}.disclosure summary{cursor:pointer;line-height:1.5}.map-canvas{height:min(330px,45dvh)}@media(max-width:600px){.cooperative-options{grid-template-columns:1fr}.section-gap{font-size:16px}dialog{padding:18px}.admin-gate{margin:6vh auto}}
.lark-login-link{display:block;text-align:center;padding:14px;border:1px solid #cbd8cd;border-radius:10px;text-decoration:none;font-weight:600}code{overflow-wrap:anywhere}
