body{background:#dcded4}.analysis-shell{max-width:1400px;margin:auto;background:#f4f6f0;border-radius:16px;min-height:calc(100vh - 48px);overflow:hidden}.analysis-header{display:flex;align-items:center;gap:25px;padding:24px 4%;border-bottom:1px solid #e1e6d9;background:#fafbf8}.analysis-header .brand{color:#263e28}.app-label{font-size:11px;letter-spacing:1.5px;color:#77816c}.back-link{margin-left:auto;font-size:13px;text-decoration:none}.flow-nav{display:flex;justify-content:center;padding:22px;gap:36px;border-bottom:1px solid #e1e6d9}.flow-nav>span{display:flex;align-items:center;gap:10px;font-size:13px;color:#829075}.flow-nav b{font-size:11px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e5eadf;font-weight:500}.flow-nav>[aria-current]{color:#224b29;font-weight:600}.flow-nav>[aria-current] b{color:white;background:#2c5d32}#workspace{padding:34px 4% 42px;min-height:580px}#workspace:focus{outline:none}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.work-heading h1{font-size:40px;letter-spacing:-1.7px;margin:10px 0;max-width:none}.work-heading p{font-size:15px;max-width:670px}.work-heading .eyebrow{color:#577743}.work-heading>span{font-size:11px;color:#77896b;white-space:nowrap}.upload-grid{display:grid;grid-template-columns:1.22fr 1fr;gap:22px}.work-card{padding:28px;background:white;border-radius:18px}.work-card h2{font-size:25px;letter-spacing:-.7px}.work-card>p{font-size:14px;margin:13px 0 20px}.dropzone{padding:36px 24px;border:1.5px dashed #b9c9a7;border-radius:14px;background:#f4f8eb;text-align:center;position:relative}.dropzone.drag-over{border-color:#376f32;background:#e8f4d7}.upload-icon{font-size:27px;background:#e0ebcd;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;margin:0 auto 15px;color:#527b35}.dropzone h3{font-size:22px;margin-bottom:10px}.dropzone p{font-size:13px;line-height:1.7}.file-label{display:inline-flex;align-items:center;gap:12px;background:#203923;color:white;padding:13px 22px;border-radius:28px;font-size:14px;margin-top:22px;cursor:pointer}.file-label:focus-within{outline:3px solid #88a952;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.upload-alternatives{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.soft-button,.primary-button,.plain-button{font:inherit;font-size:14px;padding:12px 19px;border:0;border-radius:28px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}.soft-button{background:#e9efdf;color:#355026}.primary-button{background:#213c27;color:white}.plain-button{background:transparent;color:#53674a;padding-left:0;text-decoration:underline;text-underline-offset:3px}.primary-button:disabled,.soft-button:disabled{opacity:.5;cursor:default}.mini-steps{display:grid;gap:22px;margin:24px 0}.mini-steps>div{display:flex;gap:14px}.mini-steps b{color:#607e41;font-size:12px;margin-top:3px}.mini-steps h3{font-size:17px;margin:0 0 5px}.mini-steps p{font-size:14px}.small-note{font-size:12px!important;color:#7b856e;line-height:1.65}.format-help{margin-top:24px}.format-help summary{cursor:pointer;font-size:14px;color:#46663a;padding:14px 0}.format-help p,.format-help li{font-size:13px;line-height:1.7}.format-help ul{padding-left:19px}.format-help code{font-size:12px;overflow-wrap:anywhere;color:#466334}.format-table{width:100%;border-collapse:collapse;margin:12px 0}.format-table th,.format-table td{text-align:left;padding:10px;border-bottom:1px solid #e5eade;font-size:12px;vertical-align:top}.format-table th{font-weight:500;color:#4b6040}.error-box{padding:18px;background:#fff0ec;border:1px solid #e3b2a4;color:#813b28;border-radius:12px;margin-top:20px;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.review-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px}.file-summary{display:flex;align-items:center;gap:13px;margin-bottom:20px}.file-summary>span{background:#eaf2da;padding:13px;border-radius:12px;font-size:13px;color:#3b6430}.file-summary b{font-size:16px;overflow-wrap:anywhere}.file-summary p{font-size:12px}.stat-strip{display:flex;gap:25px;flex-wrap:wrap;margin:18px 0;padding:18px 0;border-top:1px solid #e4e9dc;border-bottom:1px solid #e4e9dc}.stat-strip b{font-size:25px;font-weight:500;display:block;color:#2d482b}.stat-strip span{font-size:12px;color:#718262}.form-fields{display:grid;gap:18px;margin-top:22px}.form-fields label{font-size:14px;display:grid;gap:8px;color:#3b4f30}.form-fields select,.form-fields input{width:100%;min-width:0;border:1px solid #cbd5bd;background:#fcfdf9;border-radius:9px;padding:12px 13px;color:#2d4429;font-size:15px}.form-fields input::placeholder{color:#919c86}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.reference-grid label{font-size:12px}.reference-grid input{font-size:14px;padding:11px}.reference-label{font-size:13px;color:#718261;display:block;margin-top:15px}.confirm-label{display:flex!important;align-items:start;gap:10px!important;font-size:13px!important;line-height:1.6}.confirm-label input{width:17px;height:17px;accent-color:#427641;margin-top:3px;flex-shrink:0}.demo-tag{display:inline-block;border-radius:20px;padding:7px 12px;background:#f6ead3;color:#846125;font-size:11px;margin-top:8px}.review-actions{display:flex;gap:14px;align-items:center;margin-top:24px;flex-wrap:wrap}.table-scroll{overflow:auto;max-width:100%;margin-top:22px;border:1px solid #e5eadd;border-radius:10px}.preview-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.preview-table th,.preview-table td{padding:11px 13px;border-bottom:1px solid #e5eadd;text-align:left}.preview-table th{font-weight:500;background:#f1f5e8}.quality-note{padding:14px 16px;background:#f2f5eb;color:#657553;border-radius:10px;font-size:13px;line-height:1.7;margin-top:16px;overflow-wrap:anywhere}.processing-view{max-width:650px;text-align:center;margin:20px auto}.processing-view h1{font-size:35px;letter-spacing:-1.3px;margin:20px 0 12px}.processing-view>p{font-size:15px}.processing-orbit{width:136px;height:136px;border-radius:50%;border:1px solid #cad8b5;margin:32px auto;display:grid;place-items:center;position:relative;background:radial-gradient(circle,#edf7da,transparent 75%)}.processing-orbit:before{content:'';position:absolute;inset:12px;border:1px dashed #abc68a;border-radius:50%;animation:orbit 8s linear infinite}.processing-orbit:after{content:'';position:absolute;inset:-1px;border:3px solid transparent;border-top-color:#577e39;border-radius:50%;animation:orbit 1.6s linear infinite}.processing-orbit b{font-size:32px;color:#497139;font-weight:450}.process-list{display:grid;gap:12px;margin:26px 0;text-align:left}.process-list>div{display:flex;align-items:center;gap:14px;border:1px solid #e0e7d5;border-radius:12px;padding:17px;background:#fafbf7;color:#8d9782;font-size:14px}.process-list span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e6ebdf;font-size:12px;flex-shrink:0}.process-list .current{border-color:#a9c481;color:#38572a;background:#edf5e0}.process-list .done{color:#446d36;background:white}.process-list .done span{background:#dcecc7}.process-progress{height:5px;background:#e0e9d3;border-radius:9px;overflow:hidden}.process-progress>div{background:#799e49;height:100%;width:0;transition:width .5s ease}.process-actions{display:flex;gap:20px;justify-content:center;margin-top:20px}.result-meta{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}.result-meta>span{padding:7px 12px;border-radius:20px;background:#e5ebdc;font-size:11px;color:#5e754b;overflow-wrap:anywhere}.condition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.condition-card{background:white;padding:22px;border-radius:15px}.condition-card h2{font-size:14px;letter-spacing:0;font-weight:500;color:#657558}.condition-card .metric-value{font-size:32px;letter-spacing:-1px;margin:13px 0 5px;color:#2b482c;font-weight:500}.metric-value small{font-size:13px;letter-spacing:0}.condition-card p{font-size:12px;line-height:1.6}.metric-state{font-size:11px;display:inline-block;padding:5px 8px;border-radius:6px;margin-top:10px;background:#eff2e8;color:#6e7b5e}.metric-state.attention{background:#f9ead4;color:#916521}.result-chart-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin-bottom:30px}.result-chart-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.result-chart-head h2{font-size:20px}.result-chart-head select{font:inherit;font-size:12px;border:1px solid #d9e2cc;border-radius:8px;padding:9px;background:#f8faf5;max-width:54%}.result-chart{width:100%;height:auto;display:block}.result-chart text{font:11px 'DM Sans',sans-serif;fill:#7f8b72}.chart-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;color:#70845b;margin-top:12px}.result-summary{background:#29472d;color:white}.result-summary h2{font-size:25px;color:white}.result-summary>p{color:#d4e2c5;font-size:14px;margin-top:18px}.result-summary .summary-number{font-size:47px;letter-spacing:-2px;color:#d3ef9c;margin:15px 0 8px;line-height:1.2}.summary-number small{font-size:15px;letter-spacing:0}.result-summary .small-note{color:#b7cba4}.findings-heading{margin:28px 0 20px}.findings-heading h2{font-size:29px}.findings-heading p{font-size:14px;margin-top:10px}.findings-list{display:grid;gap:18px}.finding-card{background:white;border-radius:16px;padding:26px;border-left:4px solid #acc76e}.finding-card>header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:19px}.finding-card h3{font-size:22px}.finding-card>header>span{font-size:11px;white-space:nowrap;background:#f6ecd6;padding:6px 10px;border-radius:20px;color:#81642d}.finding-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px}.finding-columns b{display:block;font-size:12px;color:#4f703c;margin-bottom:9px}.finding-columns p{font-size:14px;line-height:1.75;color:#626f56}.finding-columns .why{font-size:12px;margin-top:10px;color:#8b937f}.evidence-toggle{font-size:12px;color:#52763d;margin-top:20px}.evidence-toggle summary{cursor:pointer}.evidence-toggle ul{padding-left:18px;font-size:12px;line-height:1.8;color:#6e7e5f}.empty-findings{padding:25px;background:#e8efdc;border-radius:15px}.empty-findings h3{font-size:21px}.empty-findings p{margin-top:13px;font-size:14px}.result-limitations{margin-top:25px;padding:23px;border-radius:14px;background:#e9edde}.result-limitations h3{font-size:18px}.result-limitations ul{font-size:13px;color:#657456;line-height:1.8;padding-left:18px}.result-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:27px}.analysis-footer{display:flex;justify-content:space-between;gap:25px;padding:22px 4%;border-top:1px solid #dde4d4;font-size:11px;color:#808c71;line-height:1.7}.analysis-footer>span:first-child{max-width:650px}.source-links{margin-top:15px;font-size:12px;color:#748568}.source-links a{text-underline-offset:3px}.help-demo{margin-top:22px;border-top:1px solid #e2e8d8;padding-top:18px}.help-demo summary{font-size:13px;cursor:pointer}.help-demo p{font-size:13px;margin-top:12px}.reference-grid input:disabled{opacity:.5}.review-layout .work-card{min-width:0}.work-card code{overflow-wrap:anywhere}@keyframes orbit{to{transform:rotate(360deg)}}
@media(max-width:1000px){.review-layout{grid-template-columns:1fr}.condition-grid{grid-template-columns:repeat(2,1fr)}.result-chart-layout{grid-template-columns:1.3fr 1fr}.reference-grid{max-width:680px}.finding-columns{gap:20px}.app-label{font-size:9px}.flow-nav{gap:25px}.upload-grid{grid-template-columns:1.1fr 1fr}}
@media(max-width:720px){body{padding:0}.analysis-shell{border-radius:0;min-height:100vh}.analysis-header{padding:18px 22px}.app-label{display:none}.back-link{font-size:12px}.flow-nav{gap:12px;padding:18px 15px;justify-content:space-between}.flow-nav>span{gap:5px;font-size:10px;flex-direction:column;text-align:center}.flow-nav b{width:25px;height:25px}#workspace{padding:26px 20px;min-height:500px}.work-heading{display:block}.work-heading h1{font-size:32px}.work-heading p{font-size:14px}.work-heading>span{display:block;margin-top:12px}.upload-grid,.result-chart-layout{grid-template-columns:1fr}.work-card{padding:23px}.work-card h2{font-size:23px}.dropzone{padding:28px 15px}.dropzone h3{font-size:20px}.condition-card{padding:17px}.condition-card .metric-value{font-size:27px}.condition-card h2{font-size:13px}.condition-grid{gap:11px}.condition-card p{font-size:11px}.reference-grid{grid-template-columns:1fr}.reference-grid label{font-size:14px}.reference-grid input{font-size:15px}.finding-card{padding:23px}.finding-card>header{display:block}.finding-card>header>span{display:inline-block;margin-top:12px}.finding-columns{grid-template-columns:1fr;gap:22px}.finding-card h3{font-size:22px}.finding-columns b{font-size:13px}.finding-columns p{font-size:14px}.analysis-footer{display:block;font-size:10px}.analysis-footer>span{display:block}.analysis-footer>span:last-child{margin-top:12px}.result-chart-head{display:block}.result-chart-head select{max-width:100%;width:100%;margin-top:12px}.processing-view h1{font-size:30px}.upload-alternatives{flex-direction:column}.result-actions>*{width:100%}.file-summary b{font-size:14px}.preview-table{font-size:11px}.format-table td,.format-table th{font-size:11px;padding:8px}.format-table code{font-size:10px}.work-heading>div>.eyebrow{font-size:10px}.result-summary .summary-number{font-size:41px}}
@media(prefers-reduced-motion:reduce){.processing-orbit:before,.processing-orbit:after{animation:none}.process-progress>div{transition:none}}
.result-lot-switch{display:flex;align-items:center;gap:13px;font-size:13px;margin:0 0 20px;color:#4d6940}.result-lot-switch select{font:inherit;border:1px solid #c7d7b4;padding:9px 12px;border-radius:8px;background:white;max-width:70%}.result-limitations>summary{cursor:pointer;font-size:14px;color:#49653a}.result-summary .soft-button{margin:5px 0 0;background:#d3ef9c;color:#284c26}.review-layout .work-card .small-note{margin-top:18px}
/* Sensor linking demonstration */
.connect-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.orchard-card{position:relative;min-height:510px;border-radius:22px;overflow:hidden;background:#254b30;color:white}.orchard-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.orchard-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,36,19,.2),transparent 25%,rgba(12,36,19,.85))}.orchard-top,.orchard-bottom{position:relative;z-index:1;padding:28px}.orchard-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.simulation-label{display:inline-flex;align-items:center;border-radius:30px;padding:8px 13px;background:#e6f0d8;color:#35572e;font-size:14px;line-height:1.2}.station-id{font-size:12px;letter-spacing:1px;color:#fff}.orchard-bottom{position:absolute;bottom:0;left:0;right:0;padding:34px}.orchard-bottom>.eyebrow{color:#d4edb3}.orchard-bottom h2{font-size:44px;line-height:1.08;letter-spacing:-1.8px;color:white;margin:18px 0 25px}.orchard-facts{display:flex;gap:12px;flex-wrap:wrap}.orchard-facts>span{font-size:14px;border:1px solid #a4ba9b66;background:#f1ffe512;padding:8px 11px;border-radius:20px}.connect-card{padding:30px}.connect-card h2{font-size:29px;line-height:1.2;margin-top:13px}.connect-card>p{font-size:16px;line-height:1.7}.device-list{margin:18px 0 27px}.device-list>div{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid #e8ede2}.device-code{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#eef4e7;color:#53763c;font-size:13px;flex-shrink:0}.device-list h3{font-size:16px;font-weight:500}.device-list p{font-size:14px;margin-top:3px;line-height:1.45}.device-ready{margin-left:auto;font-size:12px;color:#678253}.connect-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:16px;line-height:1.4;padding:17px 22px}.connect-card .connection-note{font-size:14px;line-height:1.6;margin:13px 0;color:#77836d}.csv-alternative{border-top:1px solid #e6eadf;margin-top:20px;padding-top:17px;display:flex;align-items:center;flex-wrap:wrap;gap:7px 15px;font-size:14px;color:#728266}.csv-alternative .plain-button{font-size:14px}.back-connect{margin-bottom:18px;font-size:14px}.sensor-summary{background:#e9f0df;border:1px solid #d7e3ca;border-radius:18px;padding:25px;margin:0 0 25px}.sensor-summary-head{display:flex;align-items:center;justify-content:space-between;gap:22px}.sensor-summary h2{font-size:27px;margin:14px 0 7px}.sensor-summary-head p{font-size:14px}.sync-summary{text-align:right;font-size:16px;color:#456937;line-height:1.7}.sync-summary small{font-size:14px;color:#6f7f61}.sensor-readings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:22px}.sensor-reading{display:flex;flex-direction:column;text-align:left;gap:12px;border:1px solid transparent;border-radius:13px;padding:18px;background:white;color:#35552f;cursor:pointer;min-width:0;font:inherit}.sensor-reading:hover{border-color:#99b17d;background:#fbfdf8}.sensor-reading:focus-visible{outline:3px solid #769b4c;outline-offset:3px}.sensor-reading>span{font-size:14px}.sensor-reading b{font-size:25px;font-weight:500;line-height:1.25}.sensor-reading b small{font-size:14px;font-weight:400}.sensor-reading>span:last-child{font-size:13px;color:#70855c}.sensor-footnote{margin-top:16px;font-size:14px!important;line-height:1.6}.processing-view:has(.simulation-label){max-width:640px;margin:0 auto}.processing-view:has(.simulation-label) .processing-orbit{width:94px;height:94px;margin:20px auto}.processing-view:has(.simulation-label) .process-list{gap:8px;margin:20px 0}.processing-view:has(.simulation-label) .process-list>div{padding:13px 17px;font-size:15px}.processing-view:has(.simulation-label) h1{font-size:32px;margin-top:14px}.work-heading p{font-size:16px}
@media(max-width:1000px){.connect-layout{grid-template-columns:.85fr 1.15fr}.connect-card{padding:25px}.orchard-top{align-items:flex-start;flex-direction:column}.orchard-bottom{padding:26px}.orchard-bottom h2{font-size:38px}.device-ready{display:none}}
@media(max-width:720px){.connect-layout{grid-template-columns:1fr;gap:18px}.orchard-card{min-height:260px}.orchard-top{padding:18px;flex-direction:row;align-items:center}.orchard-bottom{padding:22px}.orchard-bottom h2{font-size:29px;margin:10px 0 15px}.orchard-bottom h2 br{display:none}.orchard-bottom .eyebrow{font-size:10px}.orchard-facts{gap:6px}.orchard-facts>span{font-size:12px;padding:6px 8px}.station-id{font-size:10px}.simulation-label{font-size:12px}.connect-card{padding:23px}.connect-card h2{font-size:26px}.connect-button{font-size:15px;padding:15px 17px}.sensor-summary{padding:20px}.sensor-summary-head{display:block}.sync-summary{display:block;text-align:left;margin-top:14px}.sensor-readings{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sensor-reading{padding:14px}.sensor-reading b{font-size:23px}.sensor-summary h2{font-size:25px}.processing-view:has(.simulation-label) h1{font-size:28px}.processing-view:has(.simulation-label) .process-list>div{font-size:14px}}
