:root{color:#1f2a1f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f6f1;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0}body{min-height:100vh}h1,h2,h3,p{margin-top:0}button,input,select,textarea{font:inherit}.app-shell{color:#1f2a1f;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#f3f6f1;flex-direction:column;display:flex}.test-indicator{z-index:1100;color:#371e00;text-align:center;letter-spacing:.15em;background:#ffbe46;padding:3px 12px;font-size:12px;font-weight:800;position:sticky;top:0}.app-identity{color:#4a604e;overflow-wrap:anywhere;flex-direction:column;gap:4px;margin-top:auto;padding:16px 24px;font-size:12px;display:flex}.app-identity details{max-width:480px}.app-identity summary{cursor:pointer;padding:12px 0}.update-notice{background:#edf3ea;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.topbar{background:#f7f9f6;border-bottom:1px solid #dde6d6;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#4a6a4d;font-size:12px}.topbar h1{margin:4px 0 0;font-size:2rem}.season-select{flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;display:flex}.season-select select,.input,textarea,button,input{font:inherit}.nav-shell{gap:8px;padding:16px 24px 0;display:flex}.nav-button{color:#1f2a1f;cursor:pointer;background:#edf3ea;border:1px solid #c9d8c6;border-radius:999px;padding:10px 16px;transition:all .2s}.nav-button.active{color:#fff;background:#2f5d3b}.content{padding:20px 24px 32px}.panel{flex-direction:column;gap:16px;display:flex}.panel-header{justify-content:space-between;align-items:center;display:flex}.stack{flex-direction:column;gap:10px;display:flex}.entity-item{text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe4d2;border-radius:12px;justify-content:space-between;width:100%;padding:12px 14px;display:flex}.entity-item.selected{border-color:#2f5d3b;box-shadow:inset 0 0 0 1px #2f5d3b}.entity-card{background:#fff;border:1px solid #dbe4d2;border-radius:14px;align-items:stretch;width:100%;display:flex;overflow:hidden}.entity-card.selected{border-color:#2f5d3b;box-shadow:inset 0 0 0 1px #2f5d3b}.entity-card-main{text-align:left;color:#1f2a1f;background:#fff;border:none;border-radius:0;flex:auto;justify-content:space-between;align-items:center;width:100%;min-height:62px;padding:16px 18px;display:flex}.entity-card-main strong,.entity-card-main span{display:block}.entity-card-main strong{margin-bottom:3px;font-size:1.05rem}.entity-card-main span{color:#536856;font-size:.85rem}.entity-menu-button{color:#2f5d3b;background:#f8faf7;border-left:1px solid #dbe4d2;border-radius:0;width:52px;min-width:52px;padding:0 12px;font-size:1.5rem;font-weight:700;line-height:1}.gff-panel{max-width:960px}.section-header-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.breadcrumb-row{align-items:center;margin-bottom:8px;display:flex}.link-button{color:#2f5d3b;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.section-title-block{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.section-title-block h2,.section-title-block h3{margin:0}.event-detail-heading{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.section-header-row h3{margin:0}.compact-action{padding:8px 12px;font-size:.9rem}.empty-state{background:#fff;border:1px solid #dfe8d8;border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex}.empty-state p{color:#536856;margin:0}.compact-form{max-width:100%}.form-card{background:#fff;border:1px solid #dfe8d8;border-radius:14px;flex-direction:column;gap:12px;max-width:440px;padding:16px;display:flex}.field-row{align-items:center;gap:12px;display:flex}.form-card input,.form-card textarea,.field-group input,.season-select select,.modal-card input{box-sizing:border-box;border:1px solid #cad7c5;border-radius:10px;width:100%;padding:10px 12px}button{color:#fff;cursor:pointer;background:#2f5d3b;border:none;border-radius:10px;padding:10px 14px}button.secondary{color:#1e3224;background:#e6f0e3}.modal-overlay{z-index:1000;background:#0e181261;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #dfe8d8;border-radius:18px;flex-direction:column;gap:12px;width:min(100%,380px);padding:18px;display:flex;box-shadow:0 18px 40px #16271c29}.modal-card h3{color:#1f2a1f;margin:0}.field-group,.checkbox-row{color:#1f2a1f;flex-direction:column;gap:6px;display:flex}.checkbox-row{flex-direction:row;align-items:center;gap:8px}.checkbox-row input{width:auto;margin:0}.modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.package-box textarea{resize:vertical;min-height:180px}.event-entry-card{background:#f9fbf7;border:1px solid #dfe8d8;border-radius:18px;flex-direction:column;gap:16px;max-width:520px;padding:18px;display:flex}.field-action-row{justify-content:flex-start;margin:8px 0 12px;display:flex}.field-action-row button{align-self:flex-start;width:auto;min-width:0}.event-list{width:100%}.event-list-item{text-align:left;color:#1f2a1f;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:#2f5d3b33;background:#fff;border:1px solid #dbe4d2;border-radius:14px;align-items:center;gap:16px;width:100%;padding:16px 18px;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .15s;display:flex}.event-list-item:hover,.event-list-item:focus-visible{background:#f5faf4;border-color:#87a17c;box-shadow:0 0 0 2px #2f5d3b1f}.event-list-item:active{transform:scale(.995)}.event-list-item.selected{border-color:#2f5d3b;box-shadow:inset 0 0 0 1px #2f5d3b}.event-list-date{color:#4d6852;text-transform:uppercase;letter-spacing:.08em;min-width:68px;font-size:.82rem;font-weight:700}.event-list-content{flex-direction:column;flex:1;gap:4px;display:flex}.event-list-content strong{font-size:1.05rem}.event-list-content span,.event-list-content small{color:#536856}.event-detail-card{background:#fff;border:1px solid #dfe8d8;border-radius:16px;flex-direction:column;gap:18px;padding:18px;display:flex}.event-detail-summary{background:#f4f9f1;border:1px solid #dfe8d8;border-radius:12px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.event-detail-summary strong{font-size:1.05rem}.event-detail-summary span{color:#536856}.detail-section{flex-direction:column;gap:10px;display:flex}.detail-section h3{margin:0}.detail-list{gap:8px;margin:0;display:grid}.detail-row{border-bottom:1px solid #edf1ea;grid-template-columns:minmax(110px,150px) 1fr;gap:12px;padding:10px 0;display:grid}.detail-row dt{color:#536856;font-weight:600}.detail-row dd{color:#1f2a1f;margin:0}.treatment-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.treatment-list li{background:#f9fbf7;border:1px solid #dfe8d8;border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.treatment-list span,.treatment-list small{color:#536856}.gff-selection-panel{background:#fff;border:1px solid #dfe8d8;border-radius:14px;padding:16px}.stacked-selector-row{align-items:flex-end}.button-row{align-items:center;gap:12px;display:flex}.event-type-grid{grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px;display:grid}.event-type-button{color:#1f2a1f;background:#edf3ea;border:1px solid #cfddca;border-radius:12px;padding:12px 10px;font-weight:700}.event-type-button.active{color:#fff;background:#2f5d3b;border-color:#2f5d3b}.event-type-button:disabled{opacity:.45;cursor:not-allowed}.section-card{max-width:none}.field-group{color:#334b36;flex-direction:column;gap:8px;width:100%;font-weight:600;display:flex}.field-group span{font-size:.9rem}.field-group input,.field-group select,.field-group textarea,.inline-add-row input,.inline-add-row select{box-sizing:border-box;background:#fff;border:1px solid #cad7c5;border-radius:10px;width:100%;padding:10px 12px}.unit-input{align-items:center;gap:10px;display:flex}.unit-input input{flex:auto}.unit-input span{text-align:right;color:#32573a;min-width:52px;font-weight:700}.selector-row{align-items:end;gap:10px;display:flex}.flex-grow{flex:auto}.inline-action{color:#1e3224;background:#edf3ea;flex-shrink:0;min-width:64px}.inline-add-row{align-items:center;gap:8px;display:flex}.measure-row,.treatment-stack{width:100%}.treatment-card{background:#f7faf6;border:1px solid #dfe8d8;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.treatment-header{align-items:end;gap:10px;display:flex}.danger-button{color:#6c2c2d;white-space:nowrap;background:#f2dada}.full-width{width:100%}.package-actions{justify-content:flex-end;display:flex}.message{color:#2f5d3b;margin:0;font-weight:600}.timeline-layout{grid-template-columns:repeat(4,minmax(220px,1fr));gap:16px;display:grid}.panel-block{background:#fff;border:1px solid #deead9;border-radius:14px;padding:16px}.field-season-card{background:#fff;border:1px solid #deead9;border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex}.field-season-summary{justify-content:space-between;align-items:center;gap:12px;display:flex}.field-season-summary strong{color:#1f2a1f;font-size:1.8rem}.field-season-meta{color:#2f5d3b;font-size:1.05rem;font-weight:700}.field-events-block{flex-direction:column;gap:12px;display:flex}.field-events-block h3{margin:0}.compact-empty-state{padding:14px 16px}.field-season-header{justify-content:space-between;gap:8px;display:flex}.place-holder{background:#fff;border:1px solid #deead9;border-radius:14px;padding:20px}.segmented-control{background:#edf4eb;border:1px solid #d6e4d3;border-radius:999px;gap:6px;padding:4px;display:inline-flex}.segment{color:#35553c;background:0 0;border:none;border-radius:999px;padding:8px 12px;font-weight:700}.segment.active{color:#fff;background:#365f3d}.summary-card{background:#fff;border:1px solid #deead9;border-radius:14px;flex-direction:column;gap:14px;padding:18px;display:flex}.grower-summary-card{margin-top:12px}.compact-panel-header{align-items:center;gap:12px}.summary-card h3{color:#213224;margin:0}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.summary-row,.summary-total{background:#f7faf6;border:1px solid #e8efe2;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.summary-row span,.summary-total span{color:#39573f}.summary-row strong,.summary-total strong{color:#1b2d1f}.summary-total{background:#edf5ee;padding-inline:14px}.field-season-plan-row{background:#f7faf6;border:1px solid #deead9;border-radius:10px;grid-template-columns:minmax(110px,140px) minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.field-season-plan-row strong{color:#1f2a1f}.field-season-plan-row select{width:min(220px,100%)}.planned-crop-locked{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.planned-crop-value{color:#35553c;font-weight:600}.planned-crop-locked small{color:#5f6e61;font-size:11px;font-weight:500}.field-season-editor{align-items:end}@media (width<=900px){.topbar,.panel-header{flex-direction:column;align-items:flex-start}.timeline-layout{grid-template-columns:1fr}}button,select,summary{touch-action:manipulation}button,select,input:not([type=checkbox]),summary{min-height:44px}button:disabled{opacity:.55;cursor:default}.modal-overlay{padding-top:max(24px, env(safe-area-inset-top));padding-bottom:max(24px, env(safe-area-inset-bottom));overflow-y:auto}.modal-card{max-height:calc(100dvh - 64px);overflow-y:auto}.field-group,.unit-input,.flex-grow,.form-card,.event-entry-card{min-width:0}.unit-input>input,.unit-input>select{flex:1 1 0;min-width:0}.unit-input>select{flex-basis:45%}.nav-shell{flex-wrap:wrap}@media (width<=480px){.topbar{flex-direction:row;align-items:center;gap:12px;padding:12px 16px}.topbar h1{font-size:1.3rem}.content{padding:16px}.nav-shell{gap:6px;padding:12px 16px 0}.nav-button{padding:10px 12px}input,select,textarea{font-size:16px}.treatment-header,.field-season-summary,.selector-row,.inline-add-row{flex-wrap:wrap}.treatment-header .flex-grow{flex-basis:100%}.field-season-plan-row{grid-template-columns:1fr}.segmented-control{border-radius:14px;flex-wrap:wrap}.summary-grid{grid-template-columns:minmax(0,1fr)}.summary-row,.summary-total{gap:12px}.event-list-item{overflow-wrap:anywhere;gap:10px;padding:12px}.detail-row dd{overflow-wrap:anywhere;margin-inline-start:0}}
