:root{--green:#0b6b4b;--green2:#159467;--mint:#e8f4ed;--ink:#10251c;--muted:#6d7e75;--bg:#f4f7f3;--card:#fff;--line:#dfe8e2;--danger:#d95b42;--gold:#d6a84f;--shadow:0 12px 32px rgba(16,37,28,.07);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}.app{min-height:100vh;display:flex}.sidebar{width:250px;background:#10251c;color:#fff;padding:24px 16px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 25px}.brandmark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#28ad7c,#07573e);display:grid;place-items:center;font-weight:900;color:#fff;box-shadow:0 8px 20px #0003}.brand b{display:block;font-size:17px;letter-spacing:-.4px}.brand small{display:block;font-size:7px;letter-spacing:1.4px;color:#a9c4b6;margin-top:3px}.rolebox{background:#173529;border:1px solid #2b4d3d;border-radius:14px;padding:10px;margin:0 0 18px}.rolebox span{font-size:10px;color:#a9c4b6;text-transform:uppercase;letter-spacing:1px}.rolebox select{display:block;width:100%;margin-top:5px;background:transparent;color:#fff;border:0;outline:0;font-weight:700}.navitem{width:100%;border:0;background:transparent;color:#b5c8be;padding:12px;display:flex;align-items:center;gap:12px;border-radius:11px;text-align:left;margin:2px 0}.navitem:hover,.navitem.active{background:#1b4434;color:#fff}.navitem.active{box-shadow:inset 3px 0 #2bb980}.navitem .icon{width:18px;height:18px}.sidebottom{margin-top:auto}.main{margin-left:250px;width:calc(100% - 250px);min-height:100vh}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:4}.crumb{font-size:14px;color:#52655b;font-weight:700}.topactions{display:flex;gap:12px;align-items:center}.iconbtn,.avatar{border:0;background:#f2f6f3;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--ink);position:relative}.iconbtn .icon{width:18px}.dot{width:7px;height:7px;background:#df654d;border-radius:50%;position:absolute;right:9px;top:8px;border:2px solid white}.avatar{background:#dcefe5;color:var(--green);font-weight:800}.mobilebrand{display:none}.content{max-width:1440px;margin:auto;padding:34px 38px 70px}.hero,.pageintro{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:28px}.hero{background:linear-gradient(110deg,#0e5039,#137b56);color:#fff;border-radius:26px;padding:34px;min-height:245px;overflow:hidden;position:relative}.hero:after{content:"🌿";position:absolute;font-size:190px;right:40px;bottom:-55px;opacity:.12;transform:rotate(-10deg)}.hero>*{position:relative;z-index:1}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#6f8b7d}.hero .eyebrow{color:#a8d8c2}.hero h1,.pageintro h1,.profilehead h1{font-size:38px;line-height:1.02;margin:10px 0 8px;letter-spacing:-1.7px}.hero h1 em,.pageintro h1 em{font-style:normal;color:#63d39e}.hero p,.pageintro p{margin:0;color:#c8d9d1}.pageintro p{color:var(--muted)}.primary,.secondary,.filter,.linkbtn{border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}.primary{background:var(--green);color:#fff;padding:13px 17px;box-shadow:0 8px 18px #0b6b4b2e}.hero .primary{background:#fff;color:var(--green)}.secondary{background:#edf3ef;color:var(--green);padding:11px 15px}.filter{background:#fff;border:1px solid var(--line);padding:11px 15px;color:#4d6258}.linkbtn{background:transparent;color:var(--green);padding:4px}.linkbtn .icon,.primary .icon,.secondary .icon{width:17px}.wide{width:100%;margin-top:16px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stat,.metricbig,.farmsummary>div{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 3px 15px #183e2a06}.stat span,.metricbig span,.farmsummary span{font-size:11px;color:var(--muted);display:block}.stat strong,.metricbig b,.farmsummary b{display:block;font-size:27px;margin:7px 0 3px;letter-spacing:-1px}.stat small,.metricbig small,.farmsummary small{font-size:11px;color:var(--green)}.dashboardgrid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px}.section{margin-bottom:28px}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.sectionhead h2{font-size:18px;margin:0;letter-spacing:-.5px}.harvestcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;display:flex;align-items:center;gap:18px;min-height:190px}.cropbig{font-size:62px;width:100px;height:120px;background:#fff5ef;border-radius:18px;display:grid;place-items:center}.badge{display:inline-flex;align-items:center;border-radius:99px;padding:5px 8px;font-size:9px;font-weight:900;letter-spacing:.7px}.badge.danger{background:#fff0eb;color:#c45139}.badge.green{background:#e6f5ec;color:#19744f}.harvestinfo{flex:1}.harvestinfo h3{font-size:25px;margin:8px 0 2px}.harvestinfo p{margin:0;color:var(--muted);font-size:12px}.harvestmetrics{display:flex;gap:25px;margin-top:20px}.harvestmetrics b{display:block;font-size:15px}.harvestmetrics span{font-size:9px;color:var(--muted)}.ring{width:72px;height:72px;border-radius:50%;background:conic-gradient(var(--green) 0 82%,#e4ece7 82%);display:grid;place-items:center;position:relative}.ring:after{content:"";position:absolute;width:54px;height:54px;background:#fff;border-radius:50%}.ring span,.ring small{position:relative;z-index:1}.ring span{font-size:12px;font-weight:900}.ring small{font-size:7px;color:var(--muted);margin-top:24px}.opplist{background:#fff;border:1px solid var(--line);border-radius:20px;padding:8px}.opportunity{display:flex;align-items:center;gap:12px;padding:13px 10px;border-bottom:1px solid #edf2ee}.opportunity:last-child{border-bottom:0}.cropicon{width:42px;height:42px;border-radius:12px;background:#f2f7f3;display:grid;place-items:center;font-size:23px;flex:0 0 auto}.opportunity div{flex:1}.opportunity b,.opportunity small{display:block}.opportunity small{color:var(--muted);font-size:10px;margin-top:3px}.match{font-size:10px;color:var(--green);font-weight:800}.cropgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cropcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px}.crophead{display:flex;justify-content:space-between;align-items:center}.cropcard h3{font-size:20px;margin:16px 0 3px}.cropcard>b{font-size:16px}.cropcard>small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.progress{height:6px;background:#e9efeb;border-radius:9px;margin-top:17px;overflow:hidden}.progress span{display:block;height:100%;background:var(--green);border-radius:9px}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quickbtn{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px;display:flex;align-items:center;gap:10px;text-align:left;color:var(--ink)}.quickbtn>span{width:36px;height:36px;border-radius:10px;background:var(--mint);display:grid;place-items:center;color:var(--green)}.quickbtn .icon{width:17px}.quickbtn>b{flex:1;font-size:12px}.farmsummary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.fieldgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.fieldcard{border:1px solid var(--line);background:#fff;border-radius:19px;padding:12px;display:flex;align-items:center;gap:14px;text-align:left;color:var(--ink);box-shadow:var(--shadow)}.fieldimage{width:94px;height:100px;border-radius:14px;background:#eef5ef;display:grid;place-items:center;font-size:45px}.fieldcard>div:nth-child(2){flex:1}.fieldcard h3{margin:7px 0 3px;font-size:17px}.fieldcard p,.fieldcard small{margin:0;color:var(--muted);font-size:10px;display:block}.fieldcard small{margin-top:8px;color:var(--green)}.back{border:0;background:transparent;color:var(--green);font-weight:800;margin-bottom:18px}.fieldhero{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;margin-bottom:16px}.fieldphoto{width:92px;height:92px;background:#fff1eb;border-radius:18px;display:grid;place-items:center;font-size:48px}.fieldhero>div:nth-child(2){flex:1}.fieldhero h1{margin:7px 0 3px;font-size:30px}.fieldhero p{margin:0;color:var(--muted);font-size:12px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:26px}.metricbig b{font-size:24px}.mapfake,.mapfull{background:#dfeee3;border:1px solid #c9ddd0;border-radius:20px;overflow:hidden;position:relative;min-height:330px}.mapgrid{position:absolute;inset:0;background-image:linear-gradient(#b9d2bd 1px,transparent 1px),linear-gradient(90deg,#b9d2bd 1px,transparent 1px);background-size:50px 50px;opacity:.65}.pin{position:absolute;left:50%;top:50%;font-size:38px;transform:translate(-50%,-50%)}.maplabel{position:absolute;left:calc(50% + 22px);top:calc(50% + 10px);background:#fff;padding:7px 9px;border-radius:9px;font-size:10px;font-weight:800;box-shadow:0 6px 15px #183e2a22}.timeline{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px}.timeline>div{border-left:2px solid #d9e9df;padding:0 0 20px 15px;position:relative}.timeline>div:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);position:absolute;left:-5px;top:3px}.timeline>div:last-child{padding-bottom:0}.timeline span,.timeline b,.timeline small{display:block}.timeline span{font-size:9px;color:var(--muted)}.timeline b{font-size:12px;margin-top:3px}.timeline small{font-size:10px;color:var(--muted);margin-top:2px}.searchrow{display:flex;gap:9px;margin-bottom:18px}.search{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 13px;display:flex;align-items:center;gap:8px;flex:1;max-width:560px}.search .icon{width:17px;color:#779084}.search input{border:0;outline:0;width:100%;padding:12px 0;background:transparent}.marketgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.marketcard{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.marketvisual{height:160px;background:linear-gradient(145deg,#e8f2e9,#f9ede1);display:grid;place-items:center;font-size:70px;position:relative}.marketvisual .badge{position:absolute;left:12px;top:12px}.marketbody{padding:17px}.row{display:flex;justify-content:space-between;align-items:center}.row>b{font-size:10px;color:var(--green)}.marketbody h2{font-size:25px;margin:8px 0 15px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:8px}.twocol div{background:#f5f8f5;border-radius:10px;padding:9px}.twocol span,.twocol b{display:block}.twocol span{font-size:9px;color:var(--muted)}.twocol b{font-size:13px;margin-top:3px}.muted{font-size:10px;color:var(--muted);margin-top:12px}.tabs{display:flex;gap:5px;background:#e9f0eb;padding:5px;border-radius:12px;width:max-content;margin-bottom:16px}.tabs button{border:0;background:transparent;border-radius:9px;padding:9px 14px;color:#64756d;font-weight:800;font-size:11px}.tabs button.selected{background:#fff;color:var(--green);box-shadow:0 3px 10px #163f2a10}.tabs span{background:#dfece4;border-radius:99px;padding:2px 5px;margin-left:4px}.tenderlist{display:grid;gap:11px}.tender{background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px;display:flex;gap:14px;align-items:center}.tendermain{flex:1}.tendermain h3{margin:7px 0 3px;font-size:18px}.tendermain p,.tendermain small{margin:0;display:block;color:var(--muted);font-size:10px}.tendermain small{margin-top:7px}.tenderright{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.tenderright>b{font-size:20px;color:var(--green)}.tenderright>span{font-size:8px;color:var(--muted)}.tenderright .secondary{margin-top:7px}.mapfull{height:650px}.maptools{position:absolute;z-index:2;left:18px;top:18px;display:flex;gap:8px}.maptools .search{box-shadow:0 8px 20px #173c2a1a}.marker{position:absolute;z-index:2;transform:translate(-50%,-50%);background:#fff;border-radius:12px;padding:5px 7px;box-shadow:0 7px 18px #173c2a22;display:flex;gap:5px;align-items:center}.marker span{font-size:17px}.marker small{font-size:9px;font-weight:800}.maplegend{position:absolute;z-index:2;bottom:15px;left:15px;background:#fff;border-radius:13px;padding:11px;display:flex;gap:12px;font-size:9px;box-shadow:0 8px 20px #173c2a1a}.aiupload,.airesult{max-width:760px;margin:20px auto;background:#fff;border:1px solid var(--line);border-radius:24px;padding:42px;text-align:center;box-shadow:var(--shadow)}.aiorb{width:100px;height:100px;border-radius:32px;margin:0 auto 20px;display:grid;place-items:center;background:linear-gradient(145deg,#dff5e9,#f3f0df);color:var(--green);font-size:45px}.aiupload h2{font-size:25px;margin:8px}.aiupload p{color:var(--muted);font-size:12px}.aiupload .secondary{display:block;margin:10px auto}.aiupload small{display:block;margin-top:18px;color:#87978f;font-size:9px}.airesult{text-align:left}.resulthead{border-bottom:1px solid var(--line);padding-bottom:20px}.resulthead h2{font-size:26px;margin:10px 0 5px}.resulthead p{color:var(--muted);font-size:11px}.resultgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.resultgrid div{background:#f5f8f5;border-radius:12px;padding:12px}.resultgrid span,.resultgrid b{display:block}.resultgrid span{font-size:9px;color:var(--muted)}.resultgrid b{margin-top:5px}.recommend{background:#f7faf7;border-radius:15px;padding:16px}.recommend b{font-size:12px}.recommend p{font-size:10px;color:var(--muted);margin:5px 0 14px}.taskcols{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.taskcol{background:#edf3ee;border-radius:18px;padding:11px}.tasktitle{display:flex;justify-content:space-between;padding:8px 7px 12px;font-size:12px}.tasktitle span{background:#dbe8df;border-radius:99px;padding:2px 6px}.task{background:#fff;border-radius:13px;padding:12px;display:flex;gap:9px;align-items:center;margin-bottom:8px}.task>span{font-size:20px}.task>div{flex:1}.task b,.task small{display:block}.task b{font-size:10px}.task small{font-size:8px;color:var(--muted);margin-top:3px}.task .icon{width:13px}.notifications{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.notif{display:flex;align-items:center;gap:13px;padding:16px;border-bottom:1px solid var(--line);position:relative}.notif:last-child{border-bottom:0}.notificon{width:40px;height:40px;border-radius:12px;background:#eef5f0;display:grid;place-items:center}.notif>div{flex:1}.notif b{font-size:12px}.notif p{font-size:10px;color:var(--muted);margin:4px 0}.notif small{font-size:9px;color:#9aa9a1}.unread{width:7px;height:7px;border-radius:50%;background:#e06a4d}.profilehead{background:linear-gradient(120deg,#fff,#eef7f1);border:1px solid var(--line);border-radius:22px;padding:22px;display:flex;align-items:center;gap:15px;margin-bottom:18px}.profileavatar{width:75px;height:75px;border-radius:22px;background:#dcefe5;color:var(--green);display:grid;place-items:center;font-size:25px;font-weight:900}.profilehead>div:nth-child(2){flex:1}.profilehead h1{font-size:28px;margin:7px 0 4px}.profilehead p{margin:0;color:var(--muted);font-size:11px}.settings{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.settings>div{padding:17px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.settings>div:last-child{border-bottom:0}.settings b,.settings span{display:block}.settings b{font-size:12px}.settings span{font-size:10px;color:var(--muted);flex:1}.settings .icon{width:15px}.settings input{accent-color:var(--green)}.adminlist{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.adminlist>div{display:flex;align-items:center;gap:10px;padding:15px;border-bottom:1px solid var(--line)}.adminlist>div:last-child{border-bottom:0}.adminlist .icon{width:17px;color:var(--green)}.adminlist b{font-size:11px;flex:1}.adminlist small{font-size:9px;color:var(--muted)}.toast{position:fixed;right:25px;bottom:25px;background:#10251c;color:#fff;padding:14px 16px;border-radius:15px;display:flex;gap:10px;align-items:center;box-shadow:0 18px 35px #0003;z-index:20}.toast .icon{width:18px;color:#5bd59e}.toast b,.toast span{display:block}.toast b{font-size:11px}.toast span{font-size:9px;color:#bcd0c5;margin-top:3px}@media(max-width:1000px){.sidebar{width:220px}.main{margin-left:220px;width:calc(100% - 220px)}.content{padding:25px}.grid4,.marketgrid,.cropgrid{grid-template-columns:repeat(2,1fr)}.dashboardgrid{grid-template-columns:1fr}.quick{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{display:none}.main{margin-left:0;width:100%}.topbar{height:64px;padding:0 16px}.mobilebrand{display:flex;align-items:center;gap:8px}.mobilebrand .brandmark{width:32px;height:32px;border-radius:9px}.crumb{display:none}.content{padding:18px 15px 90px}.hero{min-height:300px;padding:24px;border-radius:21px;display:block}.hero h1,.pageintro h1{font-size:31px}.hero .primary{margin-top:25px}.grid4{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:14px}.stat strong{font-size:22px}.stat small{font-size:9px}.harvestcard{align-items:flex-start;padding:14px}.cropbig{width:70px;height:80px;font-size:40px}.harvestmetrics{gap:12px;flex-wrap:wrap}.harvestmetrics b{font-size:12px}.ring{display:none}.cropgrid,.marketgrid,.fieldgrid,.taskcols{grid-template-columns:1fr}.farmsummary,.grid3{grid-template-columns:1fr 1fr}.grid3 .metricbig:last-child{grid-column:1/-1}.pageintro{align-items:flex-start;display:block}.pageintro .primary{margin-top:15px}.searchrow{overflow:auto;padding-bottom:3px}.search{min-width:220px}.marketgrid{gap:12px}.tender{align-items:flex-start}.tenderright{min-width:72px}.mapfull{height:560px}.maptools{right:15px;overflow:auto}.maplegend{left:10px;right:10px;gap:7px;flex-wrap:wrap}.aiupload,.airesult{padding:25px 18px}.resultgrid{grid-template-columns:1fr 1fr}.profilehead{align-items:flex-start}.profilehead .badge{margin-left:auto}.quick{grid-template-columns:1fr 1fr}.toast{left:15px;right:15px;bottom:15px}.fieldhero{flex-wrap:wrap}.fieldhero>div:nth-child(2){min-width:calc(100% - 115px)}.fieldhero .secondary{margin-left:108px}.tendermain h3{font-size:16px}.tendermain p{line-height:1.4}.topactions{gap:7px}}@media(max-width:390px){.grid4,.farmsummary,.grid3{grid-template-columns:1fr}.grid3 .metricbig:last-child{grid-column:auto}.quick{grid-template-columns:1fr}.hero h1,.pageintro h1{font-size:28px}}.sectorswitch{display:flex;gap:6px;padding:10px 14px;margin-bottom:4px}.sectorswitch button{flex:1;padding:8px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:12px;font-weight:600;cursor:pointer}.sectorswitch button.selected{background:var(--green);border-color:var(--green);color:#fff}.mobilesectorswitch{display:none}@media(max-width:900px){.mobilesectorswitch{display:flex;gap:8px;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line)}.mobilesectorswitch button{flex:1;padding:8px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:13px;font-weight:600}.mobilesectorswitch button.selected{background:var(--green);border-color:var(--green);color:#fff}.sectorswitch{display:none}}.publicpage{min-height:100vh;background:var(--bg)}.publictop{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.publictop .secondary{margin-right:8px}.publicfooter{text-align:center;padding:30px 20px;color:var(--muted);font-size:11px}.authlinks{display:flex;justify-content:space-between;margin-top:10px}.authlinks .linkbtn{font-size:11px;padding:2px}.modal{position:fixed;inset:0;background:#10251c8c;display:flex;align-items:center;justify-content:center;z-index:30;padding:20px}.modalcard{background:#fff;border-radius:22px;padding:24px;max-width:460px;width:100%;max-height:88vh;overflow:auto;box-shadow:0 24px 60px #0005}.modalcard label{display:block;font-size:11px;color:var(--muted);font-weight:700;margin-bottom:12px}.modalcard input,.modalcard select{display:block;width:100%;margin-top:5px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.modalcard .sectionhead button{border:0;background:#f2f6f3;width:30px;height:30px;border-radius:9px;font-size:14px}.notice{background:#eef7f1;border:1px solid #cfe6d8;color:#19744f;border-radius:13px;padding:12px 15px;font-size:11px;margin:12px 0}@media(max-width:760px){.modalcard{padding:18px}}
