:root{font-family:Inter,Aptos,Segoe UI,system-ui,sans-serif;color:#18352a;background:#f4f3ed;font-synthesis:none;--green: #173f2a;--leaf: #337a45;--lime: #dbea99;--cream: #fbfaf5;--line: #dcded2}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 85% 0,#e5eccf 0,transparent 28rem),#f4f3ed}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{height:72px;padding:0 max(20px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,63,42,.12);background:#fbfaf5cc;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.brand{border:0;background:transparent;display:flex;align-items:center;gap:10px;color:var(--green);font-size:20px;padding:0}.brand span{display:grid;place-items:center;width:36px;height:36px;background:var(--green);color:#fff;border-radius:11px}.local-badge{font-size:13px;color:#607267;background:#edf0e8;padding:7px 11px;border-radius:99px}main{max-width:1160px;margin:auto;padding:46px 24px 80px}h1,h2{margin:0;letter-spacing:-.035em}h1{font-size:clamp(36px,6vw,62px);line-height:1.03}h2{font-size:26px}.eyebrow{color:var(--leaf);text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.14em;margin:0 0 10px}.hero{min-height:285px;border-radius:28px;padding:clamp(28px,5vw,56px);color:#fff;background:linear-gradient(120deg,#133925fa,#235531e6),repeating-linear-gradient(-20deg,transparent 0 25px,rgba(255,255,255,.04) 26px 27px);display:flex;align-items:flex-end;justify-content:space-between;gap:40px;box-shadow:0 22px 50px #173f2a29;overflow:hidden;position:relative}.hero:after{content:"";width:340px;height:340px;border:1px solid rgba(219,234,153,.2);border-radius:48% 52% 60% 40%;position:absolute;right:-100px;top:-150px;transform:rotate(18deg)}.hero .eyebrow{color:var(--lime)}.hero-copy{color:#dce7dd;max-width:590px;margin:18px 0 0;font-size:17px;line-height:1.55}.primary{border:0;border-radius:12px;padding:13px 18px;background:var(--lime);color:var(--green);font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;transition:transform .18s,box-shadow .18s}.primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px #11331f29}.hero-action{position:relative;z-index:1}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:48px 2px 20px}.text-button,.back{border:0;background:transparent;color:var(--leaf);font-weight:700;display:flex;align-items:center;gap:5px;padding:8px}.parcel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.parcel-grid>.empty-state{grid-column:1 / -1}.import-panel,.data-error{margin:0 0 24px;padding:18px 20px;border:1px solid #cdd6ca;border-radius:14px;background:#fbfaf5}.import-panel p,.data-error p{margin:0 0 14px;line-height:1.5}.import-panel button+button{margin-left:10px}.secondary-button{border:1px solid #bfcabf;border-radius:10px;padding:10px 14px;background:#fff;color:var(--green);font-weight:700}.primary-button{border:0;border-radius:10px;padding:11px 14px;background:var(--green);color:#fff;font-weight:700}.data-error{border-color:#e0b7b2;background:#fbecea;color:#8f3028}.parcel-card{background:var(--cream);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #23392b0b;transition:transform .2s,box-shadow .2s}.parcel-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #23392b17}.card-main{border:0;width:100%;background:transparent;padding:22px 20px;display:flex;align-items:center;text-align:left;color:inherit}.parcel-icon{width:46px;height:46px;flex:0 0 auto;display:grid;place-items:center;border-radius:14px;background:#e7eddb;color:var(--leaf)}.parcel-icon.large{width:62px;height:62px;border-radius:18px}.parcel-icon.large svg{width:29px;height:29px}.parcel-info{margin-left:14px;display:flex;flex-direction:column;gap:4px}.parcel-name{font-size:17px;font-weight:800}.hectares{font-size:13px;color:#6b776f}.card-arrow{margin-left:auto;color:#87948b}.latest{min-height:66px;padding:11px 14px 11px 20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;color:var(--leaf);background:#f5f6ef}.latest>svg{width:17px}.latest span{display:flex;flex-direction:column;flex:1}.latest strong{font-size:13px;color:#385042}.latest small{font-size:11px;color:#79847d;text-transform:capitalize}.latest button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:10px;background:#fff;color:var(--leaf)}.latest button svg{width:17px}.latest.empty{color:#95a098}.narrow{max-width:720px;margin:0 auto}.back{margin:-12px 0 36px -8px}.form-page h1{font-size:clamp(36px,6vw,50px)}.form-intro{color:#637168;font-size:17px;line-height:1.55;margin:16px 0 34px;max-width:600px}form{background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:clamp(22px,5vw,36px);display:grid;gap:22px;box-shadow:0 12px 32px #23392b0f}label{display:grid;gap:8px;color:#324b3d;font-size:14px;font-weight:700}.optional{float:right;color:#89938c;font-weight:500;font-size:12px;margin-left:6px}input,select,textarea{width:100%;border:1px solid #ccd2c9;border-radius:11px;background:#fff;color:#18352a;padding:13px 14px;outline:none;transition:border .15s,box-shadow .15s}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}textarea{resize:vertical;min-height:92px}input:focus,select:focus,textarea:focus{border-color:var(--leaf);box-shadow:0 0 0 3px #337a451f}.form-error{margin:0;color:#a2362d;background:#fbecea;padding:10px 12px;border-radius:8px;font-size:13px}.full{width:100%;padding:15px}.history-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding-bottom:34px}.history-header h1{font-size:clamp(34px,5vw,52px)}.history-header p:last-child{color:#6d7971;margin:8px 0 0}.timeline{max-width:780px;margin:36px auto 0}.work-item{display:grid;grid-template-columns:44px 1fr;gap:18px;position:relative;padding-bottom:28px}.work-item:not(:last-child):before{content:"";position:absolute;left:21px;top:42px;bottom:-2px;width:1px;background:#cdd6ca}.timeline-dot{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#e0e9d5;color:var(--leaf);z-index:1}.timeline-dot svg{width:19px}.work-content{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:20px 22px}.work-content time{text-transform:capitalize;color:#77847b;font-size:12px;font-weight:700}.work-content h2{font-size:20px;margin-top:5px}.work-content p{color:#53645a;line-height:1.5;margin:10px 0}.person{display:inline-block;font-size:12px;color:var(--leaf);background:#ebf0e3;border-radius:99px;padding:5px 9px;margin-top:7px}.empty-state{max-width:500px;margin:70px auto;text-align:center}.empty-state>svg{width:48px;height:48px;color:#90a091}.empty-state h2{margin:16px 0 8px}.empty-state p{color:#6d7971;margin:0 0 22px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--green);color:#fff;border-radius:99px;padding:11px 18px;font-weight:700;font-size:13px;box-shadow:0 10px 30px #173f2a40;z-index:20}.session-controls{display:flex;align-items:center;gap:10px}.session-email{color:#53645a;font-size:13px;max-width:220px;overflow:hidden;text-overflow:ellipsis}.sign-out{border:1px solid #cbd3c9;background:#fff;color:var(--green);border-radius:9px;padding:7px 10px;font-size:12px;font-weight:700}.auth-page{min-height:calc(100vh - 72px);max-width:1100px;display:grid;grid-template-columns:1fr minmax(380px,480px);gap:clamp(40px,8vw,100px);align-items:center}.auth-intro{padding:30px 0}.auth-intro h1{font-size:clamp(54px,8vw,86px);color:var(--green)}.auth-intro>p:last-child{max-width:540px;color:#617067;line-height:1.65;font-size:18px}.auth-logo{display:grid;place-items:center;width:58px;height:58px;margin-bottom:32px;color:#fff;background:var(--green);border-radius:17px}.auth-logo svg{width:30px;height:30px}.auth-card{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:8px;box-shadow:0 20px 50px #23392b1a}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#e9ece4;border-radius:12px;padding:4px}.auth-tabs button{border:0;border-radius:9px;background:transparent;padding:10px;color:#66736b;font-weight:700}.auth-tabs button[aria-selected=true]{background:#fff;color:var(--green);box-shadow:0 2px 8px #23392b14}.auth-heading{padding:28px 28px 4px}.auth-heading h2{font-size:26px}.auth-heading p{color:#6b786f;line-height:1.5;margin:8px 0 0}.auth-card form{border:0;box-shadow:none;padding:22px 28px 28px}.form-success{margin:0;color:#235f36;background:#e6f2e6;padding:10px 12px;border-radius:8px;font-size:13px}.primary:disabled{opacity:.65;cursor:wait}.status-page{min-height:calc(100vh - 72px);max-width:680px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.status-page h1{font-size:clamp(36px,6vw,54px)}.status-page p{color:#5f6d64;line-height:1.6}.loading-mark{color:var(--leaf);margin-bottom:20px;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.35;transform:scale(.92)}}@media(max-width:820px){.parcel-grid{grid-template-columns:1fr 1fr}.hero{align-items:flex-start;flex-direction:column}.history-header{grid-template-columns:auto 1fr}.history-header .primary{grid-column:1 / -1;width:100%}}@media(max-width:560px){.topbar{height:62px;padding:0 16px}.local-badge{font-size:0;padding:7px}.local-badge:after{content:"Local";font-size:11px}main{padding:24px 16px 72px}.hero{min-height:350px;border-radius:20px;padding:28px 22px}.hero h1{font-size:42px}.hero-copy{font-size:15px}.hero-action{width:100%;padding:15px}.section-heading{margin-top:34px}.section-heading h2{font-size:24px}.text-button{font-size:13px}.parcel-grid,.form-row{grid-template-columns:1fr}.back{margin-bottom:28px}.history-header{gap:12px}.parcel-icon.large{width:50px;height:50px}.work-item{grid-template-columns:34px 1fr;gap:10px}.timeline-dot{width:34px;height:34px}.work-item:not(:last-child):before{left:16px;top:34px}.work-content{padding:17px}}@media(max-width:820px){.auth-page{grid-template-columns:1fr;gap:10px;padding-top:40px}.auth-intro{padding-bottom:0}.auth-intro>p:last-child{display:none}.auth-logo{margin-bottom:20px}.auth-intro h1{font-size:52px}.session-email{display:none}}@media(max-width:560px){.session-controls{gap:6px}.sign-out{padding:7px 8px}.auth-page{display:block;padding-top:34px}.auth-card{margin-top:24px}.auth-heading{padding:24px 20px 2px}.auth-card form{padding:18px 20px 22px}}
