:root{font-family:Segoe UI,Helvetica Neue,sans-serif;line-height:1.45;font-weight:400;color:#1f2a2e;background:#f7f9f8;--surface: #ffffff;--surface-soft: #f2f6f4;--border: #dbe5df;--text: #1f2a2e;--text-muted: #5c6b66;--brand: #0f7660;--brand-soft: #d8f3eb;--active: #e6f5ef;--shadow: 0 10px 30px rgba(31, 42, 46, .08)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{background:radial-gradient(circle at 10% -10%,#eef8f4 0%,transparent 30%),radial-gradient(circle at 95% 0%,#f4fbf8 0%,transparent 28%),#f7f9f8;color:var(--text)}body.native-shell,body.native-shell #root{background:#f7f9f8}.app-container{display:flex;min-height:100vh;width:100%}.sidebar{width:280px;background:var(--surface);border-right:1px solid var(--border);padding:1rem;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:20}.sidebar-brand{display:flex;gap:.75rem;align-items:center;padding:.25rem .25rem 1rem;border-bottom:1px solid var(--border);margin-bottom:1rem}.brand-mark{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:.8rem;font-weight:700;background:var(--brand-soft);color:var(--brand)}.brand-name{margin:0;font-size:1rem;font-weight:700}.brand-subtitle{margin:.15rem 0 0;color:var(--text-muted);font-size:.8rem}.sidebar-nav{display:flex;flex-direction:column;gap:.35rem}.sidebar-admin-section{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.25rem}.sidebar-admin-label{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .2rem .5rem}.sidebar-footer{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}.sidebar-logout{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--text);font:inherit;font-weight:600;padding:.55rem .7rem;cursor:pointer}.sidebar-logout:disabled{cursor:not-allowed;opacity:.7}.sidebar-footer .sidebar-logout,.sidebar-footer .sidebar-mobile-link{min-height:44px;box-sizing:border-box}.sidebar-mobile-link{display:flex;align-items:center;justify-content:center;gap:.45rem;width:100%;margin-top:.5rem;border:1px solid #bfe3d4;border-radius:10px;background:var(--brand-soft);color:#0a5e4c;font:inherit;font-weight:600;padding:.55rem .7rem;text-decoration:none;cursor:pointer}.sidebar-mobile-link:hover{border-color:var(--brand)}.sidebar-mobile-link:focus-visible{outline:3px solid rgba(15,118,96,.4);outline-offset:2px}.nav-link,.nav-group-trigger,.nav-sublink{text-decoration:none;border:0;background:transparent;border-radius:10px;cursor:pointer;color:var(--text);padding:.6rem .75rem;text-align:left;font:inherit}.nav-link,.nav-group-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;font-weight:600}.nav-sublink{display:block;margin-left:.5rem;width:calc(100% - .5rem);color:var(--text-muted)}.nav-link:hover,.nav-group-trigger:hover,.nav-sublink:hover{background:var(--surface-soft)}.nav-link.active,.nav-group-trigger.active,.nav-sublink.active{background:var(--active);color:#0a5e4c}.nav-group{display:flex;flex-direction:column;gap:.3rem}.arrow{font-size:.8rem;color:var(--text-muted);transition:transform .2s ease}.arrow.expanded{transform:rotate(90deg)}.nav-submenu{display:grid;gap:.2rem}.content-shell{flex:1;min-width:0;width:100%}.topbar{position:sticky;top:0;z-index:10;background:#f7f9f8e6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem}.eyebrow{margin:0;color:var(--text-muted);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase}.topbar-title{margin:.15rem 0 0;font-size:1.2rem}.topbar-org{margin-left:auto;display:flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.84rem;font-weight:600;white-space:nowrap}.topbar-org-icon{flex-shrink:0;opacity:.7}.mobile-menu-button{display:none;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.4rem .75rem}.content-area{padding:1.25rem;width:100%;min-width:0}.page-shell{width:100%;max-width:1600px;margin:0 auto;padding:24px;min-width:0}.page-shell h1{margin:0;font-size:1.8rem}.page-shell>header p{margin:.75rem 0 0;color:var(--text-muted)}.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dashboard-edit-button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-weight:600;padding:.55rem .9rem;cursor:pointer;box-shadow:var(--shadow)}.dashboard-section-subtitle{margin-top:.5rem;font-size:.92rem}.dashboard-daily-yield-projection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.6rem;margin-top:.75rem;align-items:stretch}.dyp-card{display:flex;flex-direction:column;border-left:3px solid transparent;border-radius:0 10px 10px 0;background:var(--surface-soft);padding:.55rem .75rem}.dyp-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.dyp-card-sample-count{font-size:.74rem;color:var(--text-muted);white-space:nowrap}.dyp-card-metrics{display:flex;gap:1.25rem;margin-top:.4rem}.dyp-card-metric{display:flex;flex-direction:column-reverse;gap:.1rem}.dyp-card-metric-label{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em}.dyp-card-metric-value{font-size:1rem;font-weight:600;color:var(--text)}.dyp-card-status{margin:.45rem 0 0;padding:.3rem .5rem;border-radius:6px;font-size:.76rem;font-weight:600;line-height:1.3}.dyp-card-status-ready{color:#15803d;background:#15803d1a}.dyp-card-status-preliminary{color:#b45309;background:#b453091a}.dyp-card-meta{margin:.4rem 0 0;font-size:.72rem;color:var(--text-muted)}.dashboard-daily-yield-view-samples-link{display:inline-block;margin-top:.9rem;font-size:.85rem;font-weight:600;color:var(--brand, #0f7660);text-decoration:none}.dashboard-daily-yield-view-samples-link:hover{text-decoration:underline}.dashboard-card-grid{--dashboard-card-columns: 1;margin-top:.9rem;display:grid;grid-template-columns:repeat(var(--dashboard-card-columns),minmax(0,1fr));gap:.8rem}.dashboard-snapshot-grid{margin-top:.9rem}.dashboard-snapshot-rows{margin-top:.9rem;display:grid;gap:.8rem}.dashboard-snapshot-row{--dashboard-snapshot-row-columns: 1;display:grid;grid-template-columns:repeat(var(--dashboard-snapshot-row-columns),minmax(0,1fr));gap:.8rem}.dashboard-snapshot-card{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.8rem;display:grid;gap:.75rem}.dashboard-snapshot-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.dashboard-snapshot-title-row h3{margin:0;font-size:.98rem}.dashboard-snapshot-type-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .5rem;background:var(--brand-soft);color:#0a5e4c;border:1px solid rgba(15,118,96,.1);font-size:.78rem;font-weight:700;white-space:nowrap}.dashboard-snapshot-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.dashboard-snapshot-column{min-width:0;display:grid;gap:.8rem}.dashboard-snapshot-column+.dashboard-snapshot-column{border-left:1px solid var(--border);padding-left:.75rem}.dashboard-snapshot-metric{display:grid;gap:.18rem}.dashboard-snapshot-label{color:var(--text-muted);font-size:.78rem;font-weight:600}.dashboard-snapshot-value{color:var(--text);font-size:1rem;font-weight:700;line-height:1.2}.dashboard-snapshot-footer{border-top:1px solid var(--border);padding-top:.65rem;display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.dashboard-snapshot-date{font-weight:600;text-align:right}.dashboard-customize-modal{width:min(960px,100%);max-height:calc(100vh - 2rem);display:flex;flex-direction:column}.dashboard-customize-content{margin-top:.7rem;overflow-y:auto;min-height:0;padding-right:.25rem}.dashboard-yield-card{padding-top:.95rem;padding-bottom:.95rem}.dashboard-yield-color-row{margin-top:.8rem;gap:.6rem}.dashboard-yield-color-pill{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.65rem .7rem;display:grid;gap:.45rem}.dashboard-yield-color-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.dashboard-yield-color-metric{min-width:0;display:grid;gap:.15rem}.dashboard-yield-color-metric-label{color:var(--text-muted);font-size:.76rem;font-weight:600}.dashboard-yield-color-metric-value{color:var(--text);font-size:.92rem;font-weight:700;line-height:1.2}.dashboard-trends-grid{margin-top:.9rem;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:.9rem;align-items:stretch}.dashboard-trends-grid.single{grid-template-columns:minmax(0,1fr)}.dashboard-trend-panel{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.8rem;display:flex;flex-direction:column}.dashboard-trend-panel-header h3{margin:0;font-size:.98rem}.dashboard-trend-panel-header--with-action{position:relative;padding-right:3rem}.dashboard-trend-panel-header--with-action .chart-expand-button{position:absolute;top:50%;right:0;transform:translateY(-50%)}.dashboard-chart-wrapper{margin-top:.7rem}.dashboard-pie-layout{display:grid;grid-template-columns:minmax(110px,1fr) minmax(180px,220px) minmax(130px,1fr);align-items:center;column-gap:.6rem}.dashboard-pie-wrapper{width:100%;margin:0 auto}.dashboard-pie-side{display:grid;gap:.42rem;align-content:center}.dashboard-pie-row{display:flex;align-items:center;min-height:24px}.dashboard-pie-labels{justify-items:start}.dashboard-pie-values{justify-items:end}.dashboard-pie-legend-value{color:var(--text);font-size:.88rem;font-weight:600;text-align:right}.dashboard-customize-copy{margin-top:.65rem}.dashboard-checkbox-list{margin-top:1rem;display:grid;gap:.7rem}.dashboard-checkbox-groups{margin-top:1rem;display:grid;gap:1rem}.dashboard-checkbox-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.dashboard-checkbox-column{display:grid;gap:1rem}.dashboard-checkbox-group h3{margin:0;font-size:.92rem}.dashboard-checkbox-group .dashboard-checkbox-list{margin-top:.65rem}.dashboard-checkbox-subtitle{margin:.7rem 0 0;color:var(--text-muted);font-size:.84rem;font-weight:600}.dashboard-checkbox-list-tight{margin-top:.45rem}.dashboard-checkbox-row{display:flex;align-items:center;gap:.7rem;color:var(--text);font-size:.95rem}.dashboard-checkbox-row input{width:1rem;height:1rem}.dashboard-customize-actions{margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border);background:var(--surface)}.tab-navigation{margin-top:1.25rem;display:flex;gap:0;border-bottom:2px solid var(--border)}.tab-button{padding:.75rem 1.25rem;background:transparent;border:none;color:var(--text-muted);font-size:.95rem;font-weight:500;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s ease}.tab-button:hover{color:var(--text);background:var(--surface-soft)}.tab-button.active{color:var(--text);border-bottom-color:var(--brand)}.tab-content{margin-top:1.25rem}.coming-soon-card{margin-top:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:1.15rem}.coming-soon-card h2{margin:0;font-size:1.05rem}.coming-soon-card p{margin:.65rem 0 0;color:var(--text-muted)}.color-share-card{margin-top:1.25rem}.color-share-description{margin:.65rem 0 0;color:var(--text-muted);font-size:.92rem}.color-groups-container{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.color-group{border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);padding:.85rem}.color-group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;border-bottom:1px solid var(--border);padding-bottom:.6rem}.color-group-name{font-weight:600;font-size:.95rem;color:var(--text);text-transform:capitalize}.color-group-total{font-weight:700;font-size:.95rem;color:var(--text)}.color-group-varieties{display:grid;gap:.5rem}.variety-share-row{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center;font-size:.88rem;padding:.4rem 0}.variety-name{color:var(--text);font-weight:500}.variety-kg{color:var(--text-muted);text-align:right}.variety-percent{color:var(--text-muted);text-align:right;min-width:45px}.irrigation-summary-grid{margin-top:.9rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.7rem}.irrigation-summary-card{border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.7rem .75rem}.irrigation-summary-label{margin:0;color:var(--text-muted);font-size:.84rem}.irrigation-summary-value{margin:.35rem 0 0;color:var(--text);font-size:1.05rem;font-weight:700}.irrigation-reading-list{margin:0;padding-left:1rem;display:grid;gap:.2rem}.irrigation-group-summary-list{margin-top:.9rem;display:grid;gap:.7rem}.irrigation-group-summary-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:.7rem .8rem}.irrigation-group-summary-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.5rem}.irrigation-group-summary-header h3{margin:0;font-size:.95rem}.irrigation-group-summary-type{border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--text-muted);padding:.12rem .45rem;font-size:.74rem;font-weight:700}.irrigation-group-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem .6rem}.irrigation-group-summary-grid p{margin:0;font-size:.82rem;color:var(--text)}.irrigation-group-summary-grid strong{color:var(--text-muted);font-weight:600}.irrigation-raw-table-wrapper{margin-top:.85rem}.irrigation-raw-table{min-width:1080px}.irrigation-raw-table th,.irrigation-raw-table td{padding:.44rem .5rem;font-size:.82rem;line-height:1.25;vertical-align:top}.irrigation-reading-compact{display:flex;flex-wrap:wrap;gap:.22rem}.irrigation-reading-pill{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);padding:.08rem .42rem;white-space:nowrap}.varieties-form,.yield-entry-form{margin-top:.85rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.varieties-form label,.yield-entry-form label{display:grid;gap:.35rem;font-size:.92rem;color:var(--text-muted)}.varieties-form input,.varieties-form select,.yield-entry-form input,.yield-entry-form select,.cleaning-report-filter-fields input,.form-actions button,.row-actions button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}.varieties-form input,.varieties-form select,.yield-entry-form input,.yield-entry-form select,.cleaning-report-filter-fields input{padding:.52rem .6rem}.yield-size-fields{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.yield-entry-layout{margin-top:1.25rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.yield-entry-layout>.coming-soon-card{min-width:0}.cases-entry-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:1rem}.cases-entry-header h2{margin:0;font-size:1.1rem}.yield-entry-primary,.yield-entry-secondary{margin-top:0}.cases-entry-open-button{border:1px solid var(--border);border-radius:10px;background:var(--brand-soft);color:#0a5e4c;font:inherit;font-weight:700;padding:.52rem .9rem;cursor:pointer}.cases-entry-open-button:disabled{opacity:.6;cursor:not-allowed}.kg-entry-header-buttons{display:flex;align-items:center;gap:.7rem}.yield-entry-weekly-summary{margin-top:0;grid-column:1 / -1}.week-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-top:.8rem}.week-day-col{background:var(--surface-subtle, #f6f8f7);border:1px solid var(--border);border-radius:8px;padding:.55rem .6rem;min-height:5.5rem}.week-day-today{background:var(--brand-soft, #e8f4f0);border-color:var(--brand, #2d8a6a)}.week-day-header{display:flex;flex-direction:column;gap:.05rem;margin-bottom:.45rem;border-bottom:1px solid var(--border);padding-bottom:.35rem}.week-day-name{font-size:.75rem;font-weight:700;color:var(--text)}.week-day-date{font-size:.7rem;color:var(--text-muted)}.week-day-entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.week-day-entry{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.week-day-entry-main{display:flex;flex-direction:column;min-width:0}.week-day-variety{font-size:.75rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-day-kg{font-size:.7rem;color:var(--text-muted)}.week-day-afw{font-size:.7rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.week-day-empty{font-size:.72rem;color:var(--text-muted);margin:0;font-style:italic}.yield-entry-recent-entries{margin-top:0;grid-column:1 / -1}.pending-agent-weeks{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.6rem;margin-top:0}.pending-agent-week-card{display:inline-flex;align-items:center;background:#fff8ef;border:1px solid #f0d9b5;border-radius:10px;color:#8b4f12;font:inherit;font-size:.88rem;font-weight:600;padding:.52rem 1rem;cursor:pointer;text-align:left;transition:background .12s,border-color .12s}.pending-agent-week-card:hover{background:#fdf0de;border-color:#e8c896}.pack-history-controls-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.pack-history-jump-form{display:flex;align-items:center;gap:.6rem;font-size:.85rem;font-weight:600;color:var(--text)}.pack-history-jump-form input[type=date]{font:inherit;padding:.4rem .6rem;border:1px solid var(--border);border-radius:8px}.pack-history-week-card{margin-top:1rem}.pack-history-week-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.pack-history-week-header h2{margin:0}.pack-history-week-total{font-size:.95rem;font-weight:700;color:var(--text);white-space:nowrap}.pack-history-load-more{display:flex;justify-content:center;margin-top:1.25rem}.yield-entry-pdf-preview{margin-top:0;grid-column:1 / -1}.pdf-preview-modal{width:min(1320px,100%);max-height:min(88vh,980px);overflow-y:auto;padding:0}.pdf-preview-modal-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:1rem 1.1rem .8rem;border-bottom:1px solid var(--border);background:var(--surface)}.pdf-preview-modal-header h2{font-size:1.2rem}.pdf-preview-header-actions{display:flex;align-items:center;gap:.45rem}.pdf-preview-subtitle{margin:.65rem 1.1rem 0;color:var(--text-muted);font-size:.88rem}.pdf-preview-form{margin:.75rem 1.1rem 0}.pdf-preview-form input[type=file]{width:100%;border:1px dashed #bdd3c8;border-radius:10px;padding:.6rem .7rem;background:var(--surface-soft)}.pdf-preview-grid{margin:.9rem 1.1rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.8rem}.pdf-preview-card{border:1px solid #d4e3dc;border-radius:12px;background:#fbfdfc;padding:.62rem;display:grid;gap:.48rem}.pdf-preview-card h3{margin:0;font-size:.96rem;line-height:1.25;word-break:break-word}.pdf-preview-card-top{display:grid;gap:.35rem;padding-bottom:.36rem;border-bottom:1px solid #e3ece8}.pdf-preview-status-row{display:flex;flex-wrap:wrap;gap:.28rem}.pdf-preview-status-pill{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:.12rem .4rem;font-size:.68rem;font-weight:700;letter-spacing:.01em}.pdf-preview-status-pill.ok{background:#e8f8f1;color:#0c614d;border-color:#b8ddd0}.pdf-preview-status-pill.warn{background:#fff8ef;color:#8b4f12;border-color:#efcfaa}.pdf-preview-metric-grid{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem;padding:.08rem 0 .2rem}.pdf-preview-metric-cell{border:1px solid #e3ece8;border-radius:8px;background:#fff;padding:.27rem .38rem}.pdf-preview-metric-grid dt{color:var(--text-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;line-height:1.1}.pdf-preview-metric-grid dd{margin:.12rem 0 0;font-size:.84rem;font-weight:700;line-height:1.1}.pdf-preview-metric-subtext{margin:.28rem 0 0;font-size:.72rem;color:var(--text-muted)}.pdf-preview-size-section{margin-top:0;padding-top:.34rem;border-top:1px solid #ecf2ef}.pdf-preview-size-section h4{margin:0;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.pdf-preview-size-section p{margin:.24rem 0 0;font-size:.8rem}.pdf-preview-size-section ul{margin:.24rem 0 0;padding-left:1.1rem;display:grid;gap:.14rem;font-size:.8rem}.pdf-size-pill-grid{list-style:none;padding-left:0;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:.22rem}.pdf-size-pill{border:1px solid #d4e3dc;border-radius:999px;background:#f4faf7;padding:.14rem .42rem;font-size:.74rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-size-preferences-panel{background:#f8fcfa;border:1px solid #d0e8de;border-radius:10px;padding:.9rem 1.1rem;margin-bottom:1rem}.csv-size-preferences-title{font-size:.95rem;font-weight:700;color:#1a3a2e;margin:0 0 .25rem}.csv-size-preferences-hint{font-size:.78rem;color:#5a7a6a;margin:0 0 .6rem}.csv-size-checkbox-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}.csv-size-checkbox-row{display:flex}.csv-size-label{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;padding:.3rem .65rem .3rem .45rem;border:1px solid #c4ddd2;border-radius:999px;background:#eef7f2;font-size:.8rem;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background .1s,border-color .1s}.csv-size-label:hover{background:#dff0e8;border-color:#a8cfc0}.csv-size-label input[type=checkbox]{flex-shrink:0;accent-color:#2e7d5e;width:.88rem;height:.88rem;cursor:pointer}.csv-size-ignored{background:#f5f5f5;border-color:#ddd}.csv-size-ignored:hover{background:#eee;border-color:#ccc}.csv-size-ignored .csv-size-name,.csv-size-ignored .csv-size-kg{color:#aaa;text-decoration:line-through}.csv-size-name{color:#1a3a2e}.csv-size-kg{color:#4a7a64;font-variant-numeric:tabular-nums}.csv-size-unknown-tag{color:#9b6b2a;font-size:.74rem;margin-left:.2rem}.pdf-preview-warning-list{color:#6c5b43;background:#faf7ef;border:1px solid #ece2cf;border-radius:10px;padding:.28rem .46rem .28rem 1.12rem}.pdf-source-readings-list{color:var(--text-muted);font-size:.74rem;line-height:1.25}.pdf-source-reading-skipped{color:#8a6f4a;text-decoration:line-through;opacity:.85}.pdf-source-reading-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.pdf-source-reading-reassign-button{flex-shrink:0;font-size:.7rem;padding:.1rem .5rem;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--text-muted);cursor:pointer}.pdf-source-reading-reassign-button:hover{border-color:var(--accent, #4a7c59)}.pdf-source-reading-actions{flex-shrink:0;display:flex;gap:.35rem}.pdf-source-reading-remove-button{flex-shrink:0;font-size:.7rem;padding:.1rem .5rem;border-radius:999px;border:1px solid #d99a8c;background:#fff;color:#b3492f;cursor:pointer}.pdf-source-reading-remove-button:hover{background:#fdf1ee}.pdf-source-reading-remove-button:disabled{opacity:.6;cursor:not-allowed}.pdf-source-reading-override-note{margin:.15rem 0 0;font-size:.72rem;font-style:italic;color:#6c5b43}.pdf-source-reading-override-error{margin:.15rem 0 0;font-size:.72rem;color:#a33d3d}.pdf-source-reading-reassign-form{display:flex;align-items:center;gap:.4rem;margin:.3rem 0 .4rem}.pdf-source-reading-reassign-form select{font-size:.74rem;padding:.12rem .3rem}.pdf-source-reading-reassign-form button{font-size:.7rem;padding:.1rem .5rem;border-radius:6px;border:1px solid var(--border);background:#fff;cursor:pointer}.pdf-source-reading-reassign-form button:disabled{opacity:.6;cursor:not-allowed}.pdf-preview-card-footer{margin-top:0;padding-top:.34rem;border-top:1px solid #ecf2ef;display:flex;justify-content:flex-end}.size-setup-modal{width:min(720px,100%);max-height:min(88vh,900px);overflow-y:auto}.size-setup-list{display:grid;gap:.7rem;margin-top:.85rem}.size-setup-row{border:1px solid #d4e3dc;border-radius:12px;background:#fbfdfc;padding:.7rem .8rem;display:grid;gap:.5rem}.size-setup-row-resolved{background:#f4faf7;border-color:#b8ddd0}.size-setup-row-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.size-setup-label{font-weight:700;font-size:.94rem}.size-setup-action-choices{display:flex;flex-wrap:wrap;gap:.3rem 1rem}.size-setup-action-choice{display:inline-flex;align-items:center;gap:.32rem;font-size:.82rem;cursor:pointer}.size-setup-fields{display:grid;gap:.45rem;padding-top:.15rem}.size-setup-fields label{display:grid;gap:.2rem;font-size:.78rem;color:var(--text-muted)}.size-setup-fields-label{font-size:.78rem;color:var(--text-muted)}.size-setup-checkbox-list{display:flex;flex-wrap:wrap;gap:.3rem .9rem}.size-setup-checkbox-item{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;cursor:pointer}.size-setup-hint{margin:0;font-size:.76rem;color:var(--text-muted)}.size-setup-row-actions{display:flex;justify-content:flex-end}.size-setup-configure-button{margin-top:.4rem;font-size:.76rem;padding:.22rem .6rem;border-radius:999px;border:1px solid #efcfaa;background:#fff8ef;color:#8b4f12;cursor:pointer}.size-setup-configure-button:hover{background:#fdeed7}.pdf-preview-failure-section{margin:1rem 1.1rem 0;padding-top:.75rem;border-top:1px solid var(--border)}.yield-entry-weekly-cases{margin-top:0;grid-column:1 / -1}.yield-entry-table-wrapper{margin-top:.9rem}.yield-entry-table{min-width:100%}.projection-controls{margin-bottom:1rem}.projection-controls-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.projection-control-label{display:flex;flex-direction:column;gap:.3rem;font-size:.875rem;font-weight:500;color:var(--text-muted)}.projection-control-input{padding:.4rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.9rem;min-width:7rem}.projection-note{font-size:.85rem;color:var(--text-muted);margin:.4rem 0 .8rem}.projection-success{color:#0f7660;font-size:.9rem;margin:.4rem 0}.projection-diff-negative{color:#c0392b;font-variant-numeric:tabular-nums}.projection-diff-positive{color:#0f7660;font-variant-numeric:tabular-nums}.projection-history-key{font-size:.8rem;color:var(--text-muted)}.projection-add-btn{align-self:flex-end;white-space:nowrap}.projection-log-empty{margin-top:1.5rem;color:var(--text-muted);font-size:.9rem;display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.projection-log{margin-top:1.25rem;display:grid;gap:1.5rem}.projection-log-group-header{font-weight:600;font-size:.9rem;color:var(--text);padding-bottom:.35rem;border-bottom:1px solid var(--border);margin-bottom:.4rem}.projection-log-item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;padding:.5rem .25rem;font-size:.875rem}.projection-log-item+.projection-log-item{border-top:1px solid var(--surface-soft)}.projection-log-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;min-width:14rem}.projection-log-forecast-tag{font-size:.78rem;color:var(--text-muted);background:var(--surface-soft);border-radius:4px;padding:.1rem .4rem;white-space:nowrap}.projection-log-series{font-weight:500;color:var(--text)}.projection-log-stats{display:flex;flex-wrap:wrap;gap:.3rem 1.25rem;align-items:baseline;flex:1}.projection-log-stat{display:flex;gap:.3rem;align-items:baseline;white-space:nowrap}.projection-log-actions{display:flex;align-items:center;gap:.4rem;margin-left:auto}.projection-log-edit-btn{border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:.8rem;font-weight:600;line-height:1;padding:.3rem .62rem;cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.projection-log-edit-btn:hover:not(:disabled){background:var(--active);border-color:#bfd2c9}.projection-log-delete-btn{border:1px solid #efc5bf;border-radius:8px;background:#fff7f5;color:#b42318;font:inherit;font-size:.8rem;font-weight:700;line-height:1;padding:.3rem .52rem;cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.projection-log-delete-btn:hover:not(:disabled){background:#fdf0ee;border-color:#e3a29b}.projection-log-delete-btn:disabled{opacity:.55;cursor:not-allowed}.projection-modal{max-width:26rem}.projection-modal-title{margin:0 0 1rem;font-size:1.1rem}.projection-modal-fieldset{border:1px solid var(--border);border-radius:8px;padding:.6rem .75rem .75rem;margin-bottom:.75rem}.projection-modal-fieldset legend{font-size:.8rem;color:var(--text-muted);padding:0 .25rem}.projection-modal-row{display:flex;flex-wrap:wrap;gap:.5rem .75rem}.projection-modal-lead-preview{margin:.35rem 0 0;font-size:.8rem;color:var(--text-muted);font-style:italic}.forecast-accuracy-card{margin-top:2rem}.forecast-accuracy-heading{font-size:1rem;font-weight:600;margin:0 0 .25rem}.forecast-accuracy-rows{display:grid;gap:.5rem;margin-top:.75rem}.forecast-accuracy-row{display:flex;align-items:center;gap:1rem;font-size:.9rem}.forecast-accuracy-label{min-width:7rem;color:var(--text-muted);font-size:.85rem}.forecast-accuracy-pct{font-weight:700;font-size:1rem;min-width:3.5rem}.forecast-accuracy-good{color:#0f7660}.forecast-accuracy-ok{color:#b07d00}.forecast-accuracy-low{color:#c0392b}.forecast-accuracy-count{font-size:.8rem;color:var(--text-muted)}.recent-entries-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem}.recent-entries-header h2{margin:0;flex:1;font-size:1.05rem}.recent-entries-actions{display:flex;align-items:center;gap:.55rem}.recent-entries-toggle{padding:.5rem .9rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer}.recent-entries-helper-text{margin:0;color:var(--text-muted);font-size:.86rem}.recent-entries-footer{margin:.5rem 0 0;color:var(--text-muted);font-size:.8rem;text-align:right}.recent-entries-pagination{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;margin-top:.6rem}.recent-entries-pagination .recent-entries-footer{margin:0}.sync-button{padding:.5rem .9rem;background:var(--brand-soft);color:#0a5e4c;border:1px solid var(--border);border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease}.sync-button:hover:not(:disabled){background:var(--brand);color:#fff}.sync-button:disabled{opacity:.6;cursor:not-allowed}.source-badge{display:inline-block;padding:.25rem .6rem;border-radius:12px;font-size:.8rem;font-weight:500}.source-manual{background:#e8f5e9;color:#1b5e20}.source-docklink{background:#e3f2fd;color:#0d47a1}.sync-result-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.25rem;background:#e8f5e9;color:#1b5e20;border:1px solid #c8e6c9;border-radius:8px;padding:.65rem 1rem;font-size:.875rem;margin-bottom:1rem}.sync-result-label{font-weight:600}.sync-result-stat{white-space:nowrap}.sync-result-warn{color:#e65100}.sync-result-muted{color:var(--text-muted)}.match-badge{display:inline-block;padding:.2rem .55rem;border-radius:10px;font-size:.78rem;font-weight:500}.match-badge-matched{background:#e8f5e9;color:#1b5e20}.match-badge-unmatched{background:#fff3e0;color:#bf360c}.waste-import-row-unmatched{background:#fffde7}.waste-variety-unmatched{display:flex;flex-direction:column;gap:.15rem}.waste-variety-docklink-hint{font-size:.75rem;color:var(--text-muted);font-style:italic}.weekly-docklink-year-filter{display:grid;gap:.3rem;color:var(--text-muted);font-size:.88rem}.weekly-docklink-year-filter select{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.4rem .55rem}.weekly-docklink-cards{margin-top:.95rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.weekly-docklink-card{border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.7rem .75rem}.weekly-docklink-card h3{margin:0;font-size:.93rem}.weekly-docklink-rows{margin:.65rem 0 0;display:grid;gap:.35rem}.weekly-docklink-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.88rem}.weekly-docklink-row dt{margin:0;display:inline-flex;align-items:center;gap:.45rem;color:var(--text-muted)}.weekly-docklink-row dd{margin:0;color:var(--text);font-weight:700}.weekly-docklink-total-row{margin-top:.15rem;padding-top:.45rem;border-top:1px solid var(--border)}.weekly-docklink-total-row dt,.weekly-docklink-total-row dd{color:var(--text);font-weight:800}.weekly-docklink-dot{width:.55rem;height:.55rem;border-radius:50%;border:1px solid rgba(0,0,0,.08)}.weekly-docklink-dot-red{background:#dc2626}.weekly-docklink-dot-orange{background:#ea580c}.weekly-docklink-dot-yellow{background:#ca8a04}.weekly-docklink-dot-green{background:#16a34a}.form-actions{grid-column:1 / -1;display:flex;gap:.6rem;margin-top:.2rem}.form-actions button,.row-actions button{padding:.45rem .7rem;cursor:pointer}.form-actions .secondary,.row-actions .danger{background:var(--surface-soft)}.form-error{color:#b42318;margin-top:.7rem}.form-success{color:#0c6a56;margin-top:.7rem}.primary-action-button{border:1px solid #0c6a56;border-radius:12px;background:var(--brand);color:#fff;font:inherit;font-weight:700;letter-spacing:.01em;line-height:1.15;min-height:44px;padding:.68rem 1.1rem;cursor:pointer;box-shadow:0 6px 16px #0f766033;transition:background-color .16s ease,box-shadow .16s ease,transform .08s ease}.primary-action-button:hover:not(:disabled){background:#0c6a56;box-shadow:0 8px 18px #0f766040}.primary-action-button:active:not(:disabled){transform:translateY(1px);box-shadow:0 4px 10px #0f766038}.primary-action-button:disabled{border-color:var(--border);background:var(--surface-soft);color:var(--text-muted);box-shadow:none;cursor:not-allowed}.mobile-action-button{width:100%;margin-top:.65rem;border:1px solid #0d6f5a;border-radius:12px;background:var(--brand);color:#fff;font:inherit;font-weight:700;line-height:1.2;min-height:48px;padding:.72rem .9rem;cursor:pointer;box-shadow:0 4px 12px #0f766033;transition:background-color .16s ease,box-shadow .16s ease,transform .08s ease}.mobile-action-button:hover{background:#0c6a56;box-shadow:0 6px 14px #0f76603d}.mobile-action-button:active{transform:translateY(1px);box-shadow:0 3px 8px #0f766038}.mobile-action-button--next{border-color:#0a5e4c;background:#0d6f5a}.varieties-toolbar{margin-top:1rem}.varieties-toolbar button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.5rem .8rem;cursor:pointer}.irrigation-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.irrigation-filter-label{display:grid;gap:.35rem;font-size:.92rem;color:var(--text-muted)}.irrigation-filter-label select{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.52rem .6rem}.greenhouse-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.greenhouse-top-grid{margin-top:1.25rem;display:grid;grid-template-columns:minmax(0,3fr) minmax(320px,2fr);gap:20px;align-items:start}.greenhouse-top-grid>.coming-soon-card{margin-top:0}.greenhouse-right-column{display:flex;flex-direction:column;gap:20px;min-width:0}.greenhouse-right-column>.coming-soon-card{margin-top:0}.greenhouse-selected-group-card{min-width:0}.greenhouse-total-stats{margin-top:.75rem}.greenhouse-group-compact{display:flex;gap:1.25rem;align-items:flex-start;margin-top:.75rem}.greenhouse-group-identity{flex:0 0 auto;min-width:0;max-width:45%}.greenhouse-group-name{font-size:1.1rem;font-weight:700;word-break:break-word;margin-bottom:.35rem}.greenhouse-group-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.greenhouse-group-type{font-size:.8rem;color:var(--text-muted);font-weight:500}.greenhouse-group-stats{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem .75rem;min-width:0}.greenhouse-stat-item{display:flex;flex-direction:column;gap:.1rem}.greenhouse-stat-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.greenhouse-stat-value{font-size:.95rem;font-weight:700}.greenhouse-selected-row{background:var(--active)}.greenhouse-table-input{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.45rem .55rem}.greenhouse-save-button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer;padding:.45rem .7rem}.greenhouse-rows-summary{margin-top:.75rem;color:var(--text-muted);font-size:.9rem}.greenhouse-link-button{margin-top:.4rem;border:0;background:transparent;color:var(--brand);font:inherit;font-weight:600;cursor:pointer;padding:0}.greenhouse-phase-totals{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}.greenhouse-phase-total-item{display:flex;flex-direction:column;gap:.15rem}.greenhouse-phase-total-label{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.greenhouse-phase-total-value{font-size:1.05rem;font-weight:700}.greenhouse-tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:0}.greenhouse-tab-button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font:inherit;font-size:.92rem;font-weight:500;cursor:pointer;padding:.65rem 1.1rem;margin-bottom:-2px;transition:color .15s,border-color .15s}.greenhouse-tab-button.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.greenhouse-tab-button:hover:not(.active){color:var(--text)}.greenhouse-tab-content{padding-top:1rem}.picking-bins-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.picking-bins-label{display:flex;flex-direction:column;gap:.35rem;font-size:.92rem;color:var(--text-muted);flex:1 1 160px;min-width:0}.setup-input{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.52rem .75rem;min-height:44px;width:100%;box-sizing:border-box}.setup-input:focus{outline:2px solid var(--brand);outline-offset:1px}.setup-action-button{flex-shrink:0;align-self:flex-end;border:none;border-radius:10px;background:var(--brand);color:#fff;font:inherit;font-weight:600;padding:.55rem 1.25rem;min-height:44px;cursor:pointer;white-space:nowrap}.setup-action-button:hover:not(:disabled){opacity:.88}.setup-action-button:disabled{opacity:.5;cursor:default}.greenhouse-toolbar-label{font-size:.9rem;color:var(--text-muted);font-weight:500;align-self:center}.valve-assign-form{margin-top:1rem}.valve-assign-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.valve-assign-row label{display:flex;flex-direction:column;gap:.35rem;font-size:.92rem;color:var(--text-muted);flex:1 1 130px;min-width:0}.valve-assign-row select,.valve-assign-row input[type=number]{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.52rem .75rem;min-height:44px;width:100%;box-sizing:border-box}.valve-assign-row select:focus,.valve-assign-row input[type=number]:focus{outline:2px solid var(--brand);outline-offset:1px}.valve-linked-table{min-width:400px}.valve-empty-state{margin-top:1rem;padding:1rem;border:1px solid var(--border);border-radius:10px;color:var(--text-muted);font-size:.92rem}.cal-modal{width:min(720px,100%);overflow-x:hidden}.cal-psi-section{margin-bottom:.875rem;border:1px solid var(--border);border-radius:10px;padding:.875rem 1rem;background:var(--surface-soft)}.cal-psi-header{display:flex;align-items:baseline;gap:.4rem;margin-bottom:.65rem}.cal-psi-header strong{font-size:.95em;font-weight:700}.cal-psi-unit{color:var(--text-muted);font-size:.8em;font-weight:400}.cal-nozzle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.625rem}.cal-nozzle-grid label{font-size:.875em;margin:0}.cal-nozzle-grid input{width:100%;box-sizing:border-box}.cal-notes{margin-top:.5rem;width:100%;box-sizing:border-box}@media (max-width: 520px){.cal-nozzle-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#141b1861;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:1rem}.variety-modal{width:min(680px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:1.15rem}.variety-modal h2{margin:0;font-size:1.05rem}.varieties-table-wrapper{margin-top:.9rem;overflow-x:auto}.varieties-table{width:100%;border-collapse:collapse;min-width:760px}.yield-entry-table.varieties-table{min-width:0;width:100%;table-layout:fixed}.varieties-table th,.varieties-table td{text-align:left;padding:.6rem;border-bottom:1px solid var(--border);font-size:.92rem}.varieties-table th{color:var(--text-muted);font-weight:600}.variety-card-list{margin-top:.75rem;display:flex;flex-direction:column}.variety-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .5rem;border-bottom:1px solid var(--border)}.variety-card:last-child{border-bottom:none}.variety-card-info{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:.2rem}.variety-card-header{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.92rem}.variety-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variety-card-rows{font-size:.85rem}.variety-card-count{font-size:.78em;color:var(--text-muted);margin-left:.3rem}.variety-card-stats{display:flex;flex-wrap:wrap;gap:0 .6rem;font-size:.78rem;color:var(--text-muted)}.variety-card-actions{flex-shrink:0;margin-left:auto;display:flex;align-items:flex-end}.variety-card-multi-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem}.variety-card-action-row{display:flex;align-items:center;gap:.4rem}.variety-card-action-label{font-size:.78em;color:var(--text-muted);white-space:nowrap}@media (max-width: 640px){.variety-card{flex-direction:column;align-items:flex-start;gap:.55rem}.variety-card-actions{align-self:flex-end;margin-left:0}}.yield-analytics-table{min-width:max-content}.yield-analytics-summary-table thead th{background:#f3f6f5;color:#2b3934;font-weight:700;border-bottom:1px solid #d5dfdb}.yield-analytics-summary-table tbody tr:nth-child(odd) td{background:#fcfdfc}.yield-analytics-summary-table tbody tr:nth-child(2n) td{background:#f7faf9}.yield-analytics-summary-table tfoot td{background:#e3ebe6;color:#1b2622;font-weight:700;border-top:2px solid #8fa89d;border-bottom:none}.yield-analytics-chart-wrapper{margin-top:1rem}.yield-analytics-summary-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem}.yield-analytics-summary-header h2{margin:0}.yield-analytics-summary-toolbar{display:flex;flex-wrap:wrap;align-items:end;justify-content:flex-end;gap:.62rem}.yield-analytics-filter-label{display:grid;gap:.2rem;font-size:.78rem;color:var(--text-muted);white-space:nowrap}.yield-analytics-filter-label select{border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:.82rem;line-height:1.1;padding:.28rem 2.45rem .28rem .48rem;height:30px;min-width:100px;max-width:188px}.yield-analytics-export-menu{position:relative}.yield-analytics-export-button,.yield-analytics-export-dropdown button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer}.yield-analytics-export-button{font-size:.82rem;line-height:1.1;height:30px;padding:.28rem .58rem;border-radius:8px;font-weight:600}.yield-analytics-export-dropdown{position:absolute;right:0;top:calc(100% + .35rem);min-width:150px;display:grid;gap:.35rem;padding:.45rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);z-index:5}.yield-analytics-export-dropdown button{text-align:left;padding:.45rem .55rem}.yield-analytics-export-modal{width:min(1120px,100%)}.yield-analytics-export-modal-header h2{margin:0}.yield-analytics-export-summary-row{margin-top:.55rem;display:flex;flex-wrap:wrap;gap:.4rem}.yield-analytics-export-summary-pill{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--text);font-size:.8rem;font-weight:600;line-height:1.1;padding:.26rem .55rem}.yield-analytics-export-preview-shell{margin-top:.65rem;display:grid;justify-items:center;gap:.45rem}.yield-analytics-export-preview-label{margin:0;width:min(900px,100%);color:var(--text-muted);font-size:.8rem;font-weight:600}.yield-analytics-export-paper{width:min(900px,100%);background:#fff;border:1px solid #d8e1dd;border-radius:10px;box-shadow:0 8px 20px #10182814;padding:.85rem .9rem}.yield-analytics-export-paper-header h3{margin:0;font-size:1.02rem;color:#1a2723}.yield-analytics-export-paper-header p{margin:.25rem 0 0;color:#4d5f58;font-size:.84rem}.yield-analytics-export-preview-table-wrapper{margin-top:.6rem;max-height:48vh}.yield-analytics-export-modal-actions{margin-top:.65rem;justify-content:flex-end}@media (max-width: 980px){.yield-analytics-summary-header{align-items:flex-start}.yield-analytics-summary-toolbar{justify-content:flex-start;width:100%}.yield-analytics-export-preview-label,.yield-analytics-export-paper{width:100%}}.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .55rem;font-size:.8rem;font-weight:600}.status-badge.active{color:#0a5e4c;background:var(--brand-soft)}.status-badge.inactive{color:#5c6b66;background:#eef2f0}.color-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .55rem;font-size:.8rem;font-weight:600}.color-badge.red{color:#9a1e1e;background:#fde8e8}.color-badge.orange{color:#a24b12;background:#fff1e6}.color-badge.yellow{color:#8a6b00;background:#fff9db}.color-badge.green{color:#0a5e4c;background:var(--brand-soft)}.row-actions{display:flex;gap:.45rem}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000047;border:0;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.offline-banner{background:#7c3200;color:#fff;padding:.6rem 1rem;font-size:.83rem;font-weight:500;text-align:center;line-height:1.4}.sync-status-bar{padding:.4rem 1rem;font-size:.78rem;font-weight:500;text-align:center;line-height:1.4}.sync-status-bar--pending{background:#fff7e6;color:#7c4500;border-bottom:1px solid #f5deb0}.sync-status-bar--syncing{background:#e8f3ff;color:#00529b;border-bottom:1px solid #b8d9f8}.sync-status-bar--failed{background:#fce8e8;color:#b91c1c;border-bottom:1px solid #f5bcbc}.offline-pending-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.1rem .38rem;border-radius:4px;background:#fff7e6;color:#7c4500;border:1px solid #f5deb0;margin-left:.4rem;vertical-align:middle}.mobile-layout{min-height:100vh;background:#f7f9f8;color:var(--text);display:grid;grid-template-rows:auto 1fr auto}.mobile-header{position:sticky;top:0;z-index:5;background:#f7f9f8f2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);padding:1rem;padding-top:max(1rem,env(safe-area-inset-top));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.mobile-header h1{margin:0;font-size:1.2rem}.mobile-header-with-action{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem}.mobile-header-with-action h1{min-width:0}.mobile-header-workspace{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;min-width:44px;padding:0 .85rem;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--brand);font-weight:600;font-size:.95rem;text-decoration:none;flex-shrink:0}.iosws{font:-apple-system-body;font-family:inherit;display:grid;grid-template-columns:auto minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden;background:#f7f9f8;color:var(--text)}.iosws-rail{display:flex;flex-direction:column;align-items:center;gap:.5em;padding:max(.5em,env(safe-area-inset-top)) .35em max(.5em,env(safe-area-inset-bottom));padding-left:max(.35em,env(safe-area-inset-left));border-right:1px solid var(--border);background:#fff;overflow-y:auto}.iosws-rail-list{list-style:none;margin:0;padding:.5em 0 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.35em}.iosws-rail-link{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:.25em;border-radius:12px;color:#51625d;text-decoration:none}.iosws-rail-link[aria-current=page]{background:var(--brand-soft);color:var(--brand)}.iosws-rail-caption{font-size:.65em;font-weight:600;line-height:1.1}.iosws-main{min-width:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:max(1em,env(safe-area-inset-top)) max(1em,env(safe-area-inset-right)) max(1em,env(safe-area-inset-bottom)) 1em}.iosws-page-title{margin:0;font-size:1.3em;overflow-wrap:break-word}.iosws-page-note{margin:.5em 0 0;color:#51625d}.iosws-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5em .75em}.iosws-page-heading{flex:1 1 10em;min-width:0}.iosws-refresh,.iosws-retry{display:inline-flex;align-items:center;justify-content:center;gap:.35em;min-width:44px;min-height:44px;padding:0 .75em;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--brand);font:inherit;font-size:.9em;font-weight:600;flex-shrink:0}.iosws-refresh:disabled{color:#51625d;opacity:.7}.iosws-status{margin:.4em 0 0;min-height:1.3em;font-size:.85em;color:#51625d}.iosws-notice{margin:.75em 0 0;padding:.7em .85em;border-radius:10px;border:1px solid var(--border);overflow-wrap:anywhere}.iosws-notice p{margin:0}.iosws-notice .iosws-retry{margin-top:.6em}.iosws-notice-stale{background:#fff8e6;border-color:#f2d58a;color:#6b4e00}.iosws-notice-error{background:#fdecea;border-color:#f4b8b1;color:#8a1c12}.iosws-notice-forbidden{background:#f1f4f3;color:var(--text)}.iosws-body{margin-top:.75em}.iosws-body-stale{opacity:.75}.iosws-empty{margin:0;padding:1em;border:1px dashed var(--border);border-radius:12px;background:#fff;color:#51625d}.iosws-section-title{margin:1em 0 .5em;font-size:1em}.iosws-body>.iosws-section-title:first-child{margin-top:0}.iosws-card-list,.iosws-week-list{list-style:none;margin:0;padding:0;display:grid;gap:.6em}.iosws-color-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,11em),1fr))}.iosws-card,.iosws-week{min-width:0;padding:.8em .9em;border:1px solid var(--border);border-radius:12px;background:#fff}.iosws-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.3em .5em}.iosws-card-head .iosws-card-title{flex:1 1 8em;min-width:0}.iosws-card-title,.iosws-week-title{margin:0;display:flex;align-items:center;gap:.4em;font-size:1em;overflow-wrap:break-word}.iosws-badge{flex-shrink:0;padding:.15em .55em;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:.75em;font-weight:600}.iosws-metrics{margin:.6em 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,5em),1fr));gap:.5em .75em}.iosws-metric{min-width:0}.iosws-metric-wide{grid-column:1 / -1}.iosws-metric dt,.iosws-card-foot span:first-child{font-size:.75em;color:#51625d}.iosws-metric dd{margin:.1em 0 0;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:break-word}.iosws-card-foot{margin:.6em 0 0;padding-top:.5em;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25em .75em;font-variant-numeric:tabular-nums}.iosws-color-dot{flex-shrink:0;width:.7em;height:.7em;border-radius:50%;background:var(--iosws-color, #51625d)}.iosws-color-red{--iosws-color: #dc2626}.iosws-color-orange{--iosws-color: #d97706}.iosws-color-yellow{--iosws-color: #ca8a04}.iosws-color-green{--iosws-color: #0f7660}.iosws-share{margin-top:.6em;height:6px;border-radius:999px;background:#eef2f0;overflow:hidden}.iosws-share span{display:block;height:100%;background:var(--iosws-color, var(--brand))}.iosws-week-values{margin:.5em 0 0;display:grid;gap:.3em}.iosws-week-value{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 .75em}.iosws-week-value dt{display:flex;align-items:center;gap:.4em;min-width:0}.iosws-week-value dd{margin:0 0 0 auto;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.mobile-content{padding:1rem 1rem 5.5rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.mobile-page h2{margin:0;font-size:1.25rem}.mobile-page p{margin:.55rem 0 0;color:var(--text-muted)}.mobile-card-grid{margin-top:1rem;display:grid;gap:.75rem}.mobile-card-button{width:100%;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);min-height:72px;padding:.9rem 1rem;display:flex;align-items:center;justify-content:space-between;text-decoration:none;font:inherit;font-weight:700;box-shadow:var(--shadow)}.mobile-card-button:disabled{font-weight:600;color:var(--text-muted)}.mobile-card-button span{font-size:.82rem;font-weight:600;color:var(--text-muted)}.mobile-home-tasks{list-style:none;margin:0;padding:0;display:grid;gap:.65rem;container-type:inline-size}.mobile-home-task{--task-tint: #eef2f0;--task-ink: #4b5b63;display:flex;align-items:center;gap:min(.9rem,16px);min-height:64px;padding:.8rem min(.9rem,16px) .8rem min(.8rem,14px);border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 1px 2px #1018280a;color:var(--text);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease,border-color .12s ease}.mobile-home-task:active{background:#f3f6f5;border-color:#cdd9d3}.mobile-home-task:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.mobile-home-task-icon{flex-shrink:0;display:grid;place-items:center;width:min(2.75rem,52px);height:min(2.75rem,52px);border-radius:12px;background:var(--task-tint);color:var(--task-ink)}.mobile-home-task-icon svg{width:min(1.5rem,28px);height:min(1.5rem,28px)}.mobile-home-task-label{flex:1;min-width:0;font-size:1.05rem;font-weight:600;line-height:1.3;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.mobile-home-task-chevron{flex-shrink:0;width:18px;height:18px;color:#9aa8a3}.mobile-home-task--yield{--task-tint: #e3f2ec;--task-ink: #0f7660}.mobile-home-task--quality{--task-tint: #fbf1dc;--task-ink: #8a5d00}.mobile-home-task--irrigation{--task-tint: #e4f0f8;--task-ink: #1f6fa8}.mobile-home-task--pest{--task-tint: #f8e9e3;--task-ink: #a4462b}.mobile-home-task--food-safety{--task-tint: #e0f2f5;--task-ink: #0e6f86}.mobile-home-task--calibration{--task-tint: #ecebf7;--task-ink: #5b53a6}.mobile-home-task--maintenance{--task-tint: #eceff1;--task-ink: #4b5b63}@container (max-width: 12em){.mobile-home-task-chevron{display:none}.mobile-home-task-icon{width:min(2.25rem,40px);height:min(2.25rem,40px);border-radius:10px}.mobile-home-task-icon svg{width:min(1.25rem,24px);height:min(1.25rem,24px)}}.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;background:var(--surface);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:.65rem .8rem;padding-bottom:max(.65rem,env(safe-area-inset-bottom));padding-left:max(.8rem,env(safe-area-inset-left));padding-right:max(.8rem,env(safe-area-inset-right))}.mobile-bottom-nav-single{grid-template-columns:minmax(0,1fr)}.mobile-bottom-nav-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-bottom-link-desktop{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;box-sizing:border-box}body.keyboard-open .mobile-bottom-nav{display:none}.mobile-bottom-link{border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--text);text-decoration:none;text-align:center;padding:.55rem .6rem;font-weight:600}.mobile-bottom-link.active{background:var(--active);color:#0a5e4c}.mobile-yield-page{display:grid;gap:.8rem}.mobile-yield-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:.9rem}.mobile-yield-card h3{margin:0;font-size:1rem}.mobile-yield-card>p{margin:.6rem 0 0}.mobile-section-toggle{width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);padding:.75rem;font:inherit;font-weight:700;text-align:left}.mobile-yield-form{margin-top:.8rem;display:grid;gap:.7rem}.mobile-yield-form label{display:grid;gap:.35rem;font-size:.92rem;color:var(--text-muted)}.mobile-yield-form input,.mobile-yield-form select,.mobile-yield-form button,.mobile-sample-list button{border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font:inherit}.mobile-yield-form input,.mobile-yield-form select,.mobile-yield-form button{padding:.68rem .7rem}.mobile-yield-form button{background:var(--brand-soft);color:#0a5e4c;font-weight:700}.mobile-sample-list{margin:.8rem 0 0;padding:0;list-style:none;display:grid;gap:.6rem}.mobile-sample-list li{border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.65rem .7rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.mobile-sample-list li div{display:grid;gap:.2rem}.sample-edit-controls{display:flex;align-items:center;gap:.35rem;margin-top:.3rem}.sample-edit-controls input{width:6.25rem;border:1px solid var(--border);border-radius:10px;padding:.25rem .45rem;background:var(--surface);color:var(--text);font:inherit}.mobile-sample-list li span{color:var(--text-muted);font-size:.9rem}.mobile-sample-list button{padding:.45rem .65rem;background:var(--surface)}.sample-edit-btn{flex-shrink:0;padding:.25rem .55rem!important;font-size:.8rem;line-height:1;color:var(--text-muted)!important;border-color:var(--border)!important;background:var(--surface)!important}.sample-edit-btn:not(:disabled):hover{color:var(--brand)!important;border-color:var(--brand)!important}.sample-edit-btn:disabled{opacity:.55;cursor:not-allowed}.sample-edit-cancel-btn{flex-shrink:0;padding:.25rem .5rem!important;font-size:.8rem;line-height:1;color:var(--text-muted)!important;border-color:transparent!important;background:transparent!important}.sample-edit-cancel-btn:not(:disabled):hover{color:#c0392b!important}.sample-delete-btn{flex-shrink:0;padding:.25rem .5rem!important;font-size:.8rem;line-height:1;color:var(--text-muted)!important;border-color:transparent!important;background:transparent!important}.sample-delete-btn:not(:disabled):hover{color:#c0392b!important;border-color:#c0392b!important;background:#fdf0ee!important}.sample-delete-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-projection-meta{margin-top:.8rem;display:grid;gap:.2rem}.mobile-projection-meta p{margin:0}.mobile-projection-card{margin-top:.8rem;border:1px solid var(--border);border-radius:12px;background:#f1fbf7;padding:.7rem;display:grid;gap:.35rem}.mobile-projection-card p{margin:0;font-weight:600}.mobile-projection-hint{margin:.5rem 0 0;font-size:.88rem;color:var(--text-muted);font-weight:400}.mobile-irrigation-page{display:grid;gap:.8rem}.mobile-irrigation-card h4{margin:0;font-size:.92rem}.mobile-irrigation-equipment-grid{margin-top:.8rem;display:grid;gap:.7rem}.mobile-irrigation-equipment-list{margin:.55rem 0 0;padding:0;list-style:none;display:grid;gap:.45rem}.mobile-irrigation-equipment-list li{border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);padding:.55rem .6rem;display:grid;gap:.2rem}.mobile-irrigation-equipment-list li span{color:var(--text-muted);font-size:.85rem}.mobile-irrigation-reading-row{grid-template-columns:minmax(0,1fr) minmax(120px,170px);align-items:end;gap:.6rem}.mobile-irrigation-reading-row label{display:grid;gap:.3rem;color:var(--text-muted);font-size:.85rem}@media (max-width: 1100px){.dashboard-card-grid,.dashboard-snapshot-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-snapshot-columns{gap:.65rem}.dashboard-snapshot-column+.dashboard-snapshot-column{padding-left:.65rem}.dashboard-trends-grid{grid-template-columns:minmax(0,1fr)}.dashboard-pie-layout{grid-template-columns:minmax(90px,1fr) minmax(180px,1fr) minmax(120px,1fr)}.dashboard-checkbox-columns{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.dashboard-header{flex-direction:column;align-items:stretch}.dashboard-edit-button{align-self:flex-start}.dashboard-card-grid,.dashboard-snapshot-row,.dashboard-snapshot-columns{grid-template-columns:minmax(0,1fr)}.dashboard-snapshot-column+.dashboard-snapshot-column{border-left:0;border-top:1px solid var(--border);padding-left:0;padding-top:.65rem}.dashboard-pie-layout{grid-template-columns:minmax(0,1fr);gap:.6rem}.dashboard-pie-row{justify-content:center}.dashboard-pie-values .dashboard-pie-legend-value{text-align:center}}.mobile-irrigation-input-grid{display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-irrigation-bottom-section{display:grid;gap:.8rem}.mobile-irrigation-metrics{border:1px solid var(--border);border-radius:12px;background:#f1fbf7;padding:.7rem;display:grid;gap:.35rem}.mobile-irrigation-metrics p{margin:0;font-weight:600}.mobile-irrigation-notes{border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;padding:.68rem .7rem;resize:vertical}.mobile-irrigation-saved{margin:0;color:#0a5e4c;font-size:.9rem;font-weight:600}.auth-loading-shell{min-height:100vh;display:grid;place-items:center;color:var(--text-muted);font-weight:600}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.2rem}.login-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:1.25rem}.login-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.login-brand h1{margin:0;font-size:1.35rem}.login-brand p{margin:.2rem 0 0;color:var(--text-muted);font-size:.9rem}.login-form{display:grid;gap:.75rem}.login-form label{display:grid;gap:.35rem;color:var(--text-muted);font-size:.92rem}.login-form input,.login-form button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.6rem .65rem}.login-form button{background:var(--brand-soft);color:#0a5e4c;font-weight:700;cursor:pointer}.login-form button:disabled{opacity:.75;cursor:not-allowed}.login-secondary-action{margin-top:.75rem;width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--text);font:inherit;font-weight:600;padding:.58rem .65rem;cursor:pointer}.login-error{margin:0;color:#b42318;font-size:.9rem}.support-card{width:min(560px,100%)}.support-intro{margin:0 0 1.25rem;color:var(--text);line-height:1.55}.support-section{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.support-section h2{margin:0 0 .6rem;font-size:1rem}.support-contact-name{margin:0 0 .75rem;font-weight:700}.support-contact-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.support-contact-link{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem .75rem;min-height:44px;padding:.65rem .8rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--brand);font-weight:600;text-decoration:none;overflow-wrap:anywhere}.support-contact-link:hover{background:var(--brand-soft)}.support-contact-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.support-contact-label{color:var(--text-muted);font-size:.85rem;font-weight:600}.support-contact-value{font-size:1rem}.support-note{margin:0;color:var(--text-muted);font-size:.95rem;line-height:1.55}@media (max-width: 960px){.sidebar{position:fixed;left:0;transform:translate(-100%);transition:transform .22s ease}.sidebar.open{transform:translate(0)}.mobile-menu-button{display:inline-flex;align-items:center}.varieties-form{grid-template-columns:1fr}.cleaning-report-toolbar,.cleaning-report-filter-fields{align-items:stretch}.cleaning-report-filter-fields label{min-width:0;flex:1 1 140px}.cleaning-report-filter-fields .row-actions{width:100%}.cleaning-report-filter-fields .row-actions button{flex:1}.cleaning-report-print-button{width:100%}.yield-entry-form{grid-template-columns:1fr}.picking-bins-form{flex-direction:column}.picking-bins-label{flex:none;width:100%}.valve-assign-row{flex-direction:column}.valve-assign-row label{flex:none;width:100%}.picking-bins-form .setup-action-button,.valve-assign-row .setup-action-button{width:100%}.yield-size-fields{grid-template-columns:1fr}.modal-overlay{padding:.75rem}.mobile-irrigation-input-grid{grid-template-columns:1fr}.weekly-docklink-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-preview-modal{width:min(1100px,100%)}.irrigation-group-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.yield-entry-layout{grid-template-columns:1fr}.week-day-grid{grid-template-columns:repeat(4,1fr)}.primary-action-button{width:100%;justify-content:center}.pdf-preview-grid,.pdf-preview-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.greenhouse-top-grid{grid-template-columns:1fr}.greenhouse-group-compact{flex-direction:column}.greenhouse-group-identity{max-width:100%}.greenhouse-group-stats{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.color-groups-container,.weekly-docklink-cards,.pdf-preview-grid,.pdf-preview-metric-grid,.irrigation-group-summary-grid{grid-template-columns:1fr}}@media (max-width: 768px){.yield-data-entry-page,.yield-analytics-page{overflow-x:hidden}.yield-data-entry-page .tab-navigation{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.yield-data-entry-page .tab-button{flex:0 0 auto;white-space:nowrap}.yield-data-entry-page .kg-entry-header-buttons{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.yield-data-entry-page .kg-entry-header-buttons .cases-entry-open-button{width:100%;min-height:42px;padding:.58rem .68rem}.yield-data-entry-page .recent-entries-header{flex-direction:column;align-items:stretch}.yield-data-entry-page .recent-entries-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.yield-data-entry-page .recent-entries-toggle,.yield-data-entry-page .sync-button{width:100%;min-height:40px}.yield-data-entry-page .yield-entry-table-wrapper,.yield-analytics-page .varieties-table-wrapper,.yield-analytics-page .yield-analytics-export-preview-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.yield-data-entry-page .yield-entry-table{min-width:760px;table-layout:auto}.yield-data-entry-page .yield-entry-table th,.yield-data-entry-page .yield-entry-table td{white-space:nowrap;font-size:.84rem;padding:.48rem .5rem;vertical-align:top}.yield-data-entry-page .yield-entry-table .row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;min-width:124px}.yield-data-entry-page .yield-entry-table .row-actions button{width:100%;min-height:38px;white-space:nowrap;padding:.35rem .5rem}.yield-analytics-page .yield-analytics-summary-header{flex-direction:column;align-items:stretch}.yield-analytics-page .yield-analytics-summary-toolbar{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;align-items:end;justify-content:initial}.yield-analytics-page .yield-analytics-filter-label{white-space:normal}.yield-analytics-page .yield-analytics-filter-label select{min-width:0;max-width:none;width:100%}.yield-analytics-page .yield-analytics-export-menu{grid-column:1 / -1}.yield-analytics-page .yield-analytics-export-button{width:100%;min-height:38px}.yield-analytics-page .yield-analytics-export-dropdown{left:0;right:auto;min-width:180px}.yield-analytics-page .yield-analytics-chart-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.yield-analytics-page .yield-analytics-chart-wrapper>div{min-width:560px}.yield-analytics-page .yield-analytics-table th,.yield-analytics-page .yield-analytics-table td{white-space:nowrap;font-size:.84rem;padding:.5rem}}@media (max-width: 480px){.week-day-grid{grid-template-columns:repeat(2,1fr)}}.pest-planner-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch;margin-top:1.25rem}.pest-planner-card-grid>.coming-soon-card{margin-top:0;min-width:0}.pest-planner-card-grid .greenhouse-stat-value{overflow-wrap:anywhere}@media (max-width: 900px){.pest-planner-card-grid{grid-template-columns:1fr}}.pest-planner-card-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start;margin-top:1.25rem}.pest-planner-card-grid-2>.coming-soon-card{margin-top:0;min-width:0}@media (max-width: 900px){.pest-planner-card-grid-2{grid-template-columns:1fr}}.pest-planner-compact-card{padding:.85rem 1rem}.pest-planner-narrow-card{max-width:480px}@media (max-width: 640px){.pest-planner-narrow-card{max-width:none}}.pest-todo-card{display:block;width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem 1rem;margin-bottom:.65rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}.pest-todo-card:hover{border-color:var(--brand);box-shadow:0 2px 8px #0f76601f}.pest-todo-card--done{opacity:.7}.pest-todo-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.pest-todo-card-chemical{font-weight:600;font-size:1rem;margin:0 0 .2rem}.pest-todo-card-target{font-size:.82em;color:var(--text-muted);margin:0 0 .4rem}.pest-todo-card-stats{display:flex;flex-wrap:wrap;gap:.4rem .75rem;font-size:.78em;color:var(--text-muted)}.pest-todo-type-badge{display:inline-block;font-size:.72em;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .55rem;border-radius:999px;background:#e0f0eb;color:var(--brand)}.pest-todo-type-badge[data-type=drench]{background:#def;color:#1a5aa8}.pest-todo-status-badge{display:inline-block;font-size:.72em;font-weight:600;padding:.2rem .5rem;border-radius:999px;background:#fff3cd;color:#856404}.pest-todo-status-badge[data-status=completed]{background:var(--brand-soft);color:var(--brand)}.pest-todo-status-badge[data-status=cancelled]{background:#f0f0f0;color:var(--text-muted)}.pest-todo-status-badge[data-status=in_progress]{background:#fff3cd;color:#6e4f08}.pest-tank-mix-list{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.pest-tank-mix-row{display:grid;grid-template-columns:4rem 1fr 1fr;gap:.5rem;font-size:.85em;padding:.4rem .6rem;background:var(--surface-soft);border-radius:7px;align-items:center}.pest-tank-mix-label{font-weight:700;color:var(--brand)}.pest-tank-mix-water{color:var(--text-muted)}.pest-tank-mix-chem{font-weight:600;text-align:right}.pest-mix-summary{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .2rem;padding:.5rem .7rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:10px;font-size:.82rem}.pest-mix-summary-stat{white-space:nowrap}.pest-mix-summary-sep{color:var(--text-muted);-webkit-user-select:none;user-select:none}.pest-mix-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:.75rem .9rem}.pest-mix-card--active{border-color:var(--brand);background:var(--brand-soft)}.pest-mix-card--done{background:var(--surface-soft);opacity:.9}.pest-mix-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.pest-mix-card-number{font-weight:700;font-size:.95rem;color:var(--brand)}.pest-mix-card--done .pest-mix-card-number{color:var(--text)}.pest-mix-card-status{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.18rem .48rem;border-radius:999px;background:var(--brand);color:#fff}.pest-mix-card-status--done{background:#e0ece7;color:#2d6b55}.pest-mix-card-amounts{display:flex;align-items:center;gap:.35rem;font-size:.88rem;font-weight:600;flex-wrap:wrap}.pest-phase-tabs{display:flex;gap:.4rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.15rem}.pest-phase-tabs::-webkit-scrollbar{display:none}.pest-phase-tab{flex:0 0 auto;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:.85rem;font-weight:600;padding:.5rem .85rem;cursor:pointer;text-align:center;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}.pest-phase-tab--active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.pest-phase-tab--done{border-color:#b8ddd0;color:var(--brand);opacity:.85}.pest-phase-tab--active.pest-phase-tab--done{opacity:1}.pest-row-list{display:flex;flex-direction:column;gap:.4rem}.pest-row-btn{width:100%;display:grid;grid-template-columns:2rem 1fr auto;align-items:center;gap:.5rem;min-height:52px;padding:.6rem .85rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;font-weight:500;text-align:left;cursor:pointer;transition:border-color .12s,background .12s}.pest-row-btn:active{background:var(--surface-soft)}.pest-row-btn--done{border-color:#b8ddd0;background:var(--brand-soft)}.pest-row-btn-check{width:1.5rem;height:1.5rem;border:2px solid var(--border);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;color:var(--brand);transition:border-color .12s,background .12s}.pest-row-btn--done .pest-row-btn-check{border-color:var(--brand);background:var(--brand);color:#fff}.pest-row-btn-label{font-weight:600}.pest-row-btn--done .pest-row-btn-label{color:var(--brand)}.pest-row-btn-time{font-size:.72rem;color:var(--text-muted);white-space:nowrap}.pest-section-form{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem}.quality-select{display:block;width:100%;box-sizing:border-box;height:52px;padding:0 2.5rem 0 1rem;border:1.5px solid var(--border);border-radius:12px;background:var(--surface);font-size:1rem;color:var(--text);-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;cursor:pointer;transition:border-color .15s,box-shadow .15s}.quality-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0f766026}.quality-select:disabled{opacity:.5;cursor:not-allowed}.quality-input{display:block;width:100%;box-sizing:border-box;height:52px;padding:0 1rem;border:1.5px solid var(--border);border-radius:12px;background:var(--surface);font-size:1rem;color:var(--text);transition:border-color .15s,box-shadow .15s}.quality-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0f766026}.bonus-form{margin-top:.85rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem;align-items:end}.bonus-form label{display:grid;gap:.35rem;font-size:.92rem;color:var(--text-muted)}.bonus-form input,.bonus-form select{height:42px;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;line-height:1.2;padding:0 .6rem}.bonus-form input:focus,.bonus-form select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0f76601f}.bonus-form input:disabled{background:var(--surface-soft);color:var(--text-muted);cursor:not-allowed}.bonus-history-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem}.bonus-filter-bar{margin-top:.85rem;display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.bonus-filter-label{display:grid;gap:.35rem;font-size:.85rem;color:var(--text-muted)}.bonus-filter-label input,.bonus-filter-label select{height:40px;box-sizing:border-box;width:168px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;line-height:1.2;padding:0 .55rem}.bonus-filter-label input:focus,.bonus-filter-label select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0f76601f}.bonus-history-table tbody tr:nth-child(odd) td{background:var(--surface)}.bonus-history-table tbody tr:nth-child(2n) td{background:var(--surface-soft)}.bonus-history-table tbody tr:hover td{background:var(--brand-soft)}.bonus-history-table tfoot td{border-bottom:none;border-top:2px solid var(--border);background:var(--surface)}.bonus-history-subrow td{background:var(--surface-soft);color:var(--text-muted);font-size:.85em}.bonus-week-caption{font-size:.78rem;color:var(--text-muted);font-weight:400}.bonus-tier-input{height:38px;box-sizing:border-box;width:100px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;padding:0 .5rem}.bonus-tier-form{margin-top:.85rem;display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.bonus-tier-form label{display:grid;gap:.35rem;font-size:.85rem;color:var(--text-muted)}.bonus-tier-form input{height:40px;box-sizing:border-box;width:150px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:0 .55rem}.bonus-pdf-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem 1rem}.bonus-pdf-meta div span{display:block;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.bonus-pdf-meta div strong{display:block;font-size:.95rem;margin-top:.15rem}.bonus-pdf-table select{height:34px;box-sizing:border-box;width:100%;min-width:160px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.85rem;padding:0 .5rem}.bonus-pdf-row-skipped td{opacity:.5}.bonus-pdf-match-badge{display:inline-block;margin-left:.4rem;padding:.1rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700}.bonus-pdf-match-unmatched{background:#f8d7da;color:#842029}.bonus-pdf-match-ambiguous{background:#fff3cd;color:#664d03}@media print{body *:not([data-print-root]):not([data-print-root] *):not(:has([data-print-root])){display:none!important}[data-print-root]{display:block!important}}@media print{@page{size:landscape;margin:8mm}.h1-sheet-preview{position:fixed;top:0;left:0;width:100%;background:#fff}}.calibration-history-modal{width:min(1100px,calc(100vw - 48px));max-width:1100px;max-height:calc(100vh - 48px);overflow-y:auto}@media (max-width: 700px){.calibration-history-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}}.calibration-history-table-wrapper{overflow-x:auto}.calibration-history-table{table-layout:fixed}.calibration-history-actions-cell{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width: 700px){.calibration-history-table{table-layout:auto}}.calibration-history-modal .form-actions{position:sticky;bottom:0;background:var(--surface);padding-top:.75rem;margin-top:.75rem}.calibration-record-print-root{display:none;width:100%;color:#1a1a1a}@media print{.modal-overlay:has(.calibration-record-print-root){position:static;inset:auto;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;display:block}.variety-modal:has(.calibration-record-print-root){width:auto;max-width:none;max-height:none;overflow:visible;background:none;border:none;box-shadow:none;border-radius:0;padding:0}}.calibration-batch-print-record{width:100%;max-width:none}.calibration-batch-print-record+.calibration-batch-print-record{margin-top:14px;border-top:1px solid #999}.calibration-batch-print-record.compact-record,.compact-record .calibration-batch-print-task{break-inside:avoid;page-break-inside:avoid}.calibration-record-print-title{font-size:15pt;font-weight:700;margin:0 0 2mm}.calibration-record-print-meta{margin-bottom:3mm;font-size:9.5pt}.calibration-record-print-meta div{margin-bottom:.15rem}.calibration-record-print-meta span{font-weight:600}.calibration-record-print-section{margin-bottom:2.5mm}.calibration-record-print-section-title{font-size:10.5pt;font-weight:700;margin:0 0 1.5mm;break-after:avoid;page-break-after:avoid}.calibration-record-print-table{width:100%;border-collapse:collapse;font-size:9.5pt}.calibration-record-print-table thead{display:table-header-group}.calibration-record-print-table th,.calibration-record-print-table td{border:1px solid #ccc;padding:4px 6px;text-align:left;vertical-align:top;word-break:break-word}.calibration-record-print-table th{font-weight:700;background:#f7f7f7}.calibration-record-print-table tr{break-inside:avoid;page-break-inside:avoid}.calibration-long-record{width:100%;max-width:none;margin:0}.calibration-batch-print-record+.calibration-long-record,.calibration-long-record+.calibration-batch-print-record,.calibration-long-record+.calibration-long-record{margin-top:14px;border-top:1px solid #999}.calibration-long-record-title{font-size:13pt;font-weight:700;margin:0 0 1.5mm}.calibration-long-record-meta{margin-bottom:2mm;font-size:8.5pt;line-height:1.15}.calibration-long-record-meta div{margin-bottom:.1rem}.calibration-long-record-meta span{font-weight:600}.calibration-long-record-tasks{display:grid;grid-template-columns:1fr 1fr;gap:10mm;align-items:start}.calibration-long-record-column{min-width:0}.calibration-long-record-section{margin-bottom:5px;break-inside:avoid;page-break-inside:avoid}.calibration-long-record-section-title{font-size:9.5pt;font-weight:700;margin:0 0 1px;line-height:1.15;break-after:avoid;page-break-after:avoid}.calibration-long-record-table{width:100%;border-collapse:collapse;font-size:8pt;line-height:1.15}.calibration-long-record-table thead{display:table-header-group}.calibration-long-record-table th,.calibration-long-record-table td{border:1px solid #ccc;padding:1.5px 4px;text-align:left;vertical-align:top;word-break:break-word}.calibration-long-record-table th{font-weight:700;background:#f7f7f7}.calibration-long-record-table tr{break-inside:avoid;page-break-inside:avoid}@media print{.calibration-record-print-root{display:block!important}}.cleaning-locations-toolbar{margin-top:1rem;display:flex;justify-content:flex-end}.cleaning-locations-toolbar button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.5rem .8rem;cursor:pointer}.cleaning-locations-list{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}@media (max-width: 900px){.cleaning-locations-list{grid-template-columns:1fr}}.cleaning-location-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.cleaning-location-card-info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.cleaning-location-card-name{font-weight:600;font-size:1rem;color:var(--text)}.cleaning-location-card-area{font-size:.85rem;color:var(--text-muted)}.cleaning-location-card-stats{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.8rem;color:var(--text-muted)}.cleaning-location-card-actions{flex-shrink:0}.cleaning-location-modal{width:min(720px,100%)}.cleaning-location-notes-field{grid-column:1 / -1}.cleaning-location-notes-field textarea{resize:vertical;font-family:inherit}.cleaning-location-mobile-instructions-field{grid-column:1 / -1}.cleaning-location-mobile-instructions-field textarea{resize:vertical;font-family:inherit}.cleaning-location-mobile-instructions-counter{align-self:flex-end;font-size:.78rem;color:var(--text-muted)}.cleaning-location-card-mobile-instructions{margin-top:.35rem;padding-top:.35rem;border-top:1px dashed var(--border);font-size:.82rem;color:var(--text-muted)}.cleaning-location-card-mobile-instructions-label{display:block;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;margin-bottom:.15rem}.cleaning-location-card-mobile-instructions p{margin:0;white-space:pre-wrap;word-break:break-word}.cleaning-tasks-section{grid-column:1 / -1;margin-top:.4rem;display:flex;flex-direction:column;gap:.6rem}.cleaning-tasks-header{display:flex;align-items:center;justify-content:space-between;font-size:.92rem;color:var(--text-muted);font-weight:600}.cleaning-tasks-header button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-weight:500;padding:.35rem .65rem;cursor:pointer}.cleaning-tasks-empty{font-size:.85rem;color:var(--text-muted);margin:0}.cleaning-task-row{display:flex;flex-direction:column;gap:.5rem;padding:.6rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.cleaning-task-row-main{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.cleaning-task-row-options{display:flex;flex-wrap:wrap;gap:.5rem}.cleaning-task-row-options select,.cleaning-task-row-options input{flex:1;min-width:140px}.cleaning-task-row input,.cleaning-task-row select{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;padding:.45rem .6rem}.cleaning-task-row button{padding:.45rem .7rem;cursor:pointer}.cleaning-task-checkboxes{display:flex;flex-direction:column;gap:.4rem;margin-left:.9rem;padding-left:.6rem;border-left:2px solid var(--border)}.cleaning-task-checkboxes-header{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--text-muted);font-weight:600}.cleaning-task-checkboxes-header button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-weight:500;font-size:.82rem;padding:.3rem .55rem;cursor:pointer}.cleaning-task-checkbox-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.cleaning-location-confirm-modal{width:min(440px,100%);background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:1.15rem}.cleaning-location-confirm-modal h3{margin:0 0 .5rem;font-size:1.05rem}.cleaning-location-confirm-modal p{margin:0 0 .4rem;color:var(--text-muted);font-size:.9rem}.form-actions .danger{background:var(--surface-soft)}.cleaning-checklist-section{margin-top:1.25rem}.cleaning-checklist-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 .6rem}.cleaning-checklist-list{display:flex;flex-direction:column;gap:.75rem}.cleaning-checklist-location-card{display:block;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:.9rem;text-decoration:none;color:inherit}.cleaning-checklist-card-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0}.cleaning-checklist-card-name{font-size:1.05rem;font-weight:700;color:var(--text);min-width:0;overflow-wrap:anywhere}.cleaning-checklist-frequency-badge{display:inline-flex;align-items:center;flex-shrink:0;border-radius:999px;padding:.15rem .55rem;font-size:.68rem;font-weight:600;letter-spacing:.03em;color:var(--brand);background:var(--brand-soft);white-space:nowrap}.cleaning-checklist-card-area{font-size:.85rem;color:var(--text-muted)}.cleaning-checklist-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.cleaning-checklist-header-title-group{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0;flex:1 1 auto}.cleaning-checklist-header-title-group h2{min-width:0;overflow-wrap:anywhere}.cleaning-checklist-header-date{flex:0 0 auto;margin-top:.15rem;font-size:.82rem;font-weight:500;color:var(--text-muted);text-align:right;white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;outline-offset:2px}.cleaning-checklist-backdate-notice{display:flex;align-items:baseline;gap:.5rem;margin-top:.4rem;font-size:.82rem;color:var(--text-muted)}.cleaning-checklist-return-today-link{background:none;border:none;padding:0;font:inherit;font-size:.8rem;color:var(--brand);text-decoration:underline;cursor:pointer}.cleaning-checklist-date-picker-modal{width:min(360px,100%)}.cleaning-checklist-date-picker-field{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0;font-size:.9rem;font-weight:600}.cleaning-checklist-date-picker-field input[type=date]{font:inherit;font-weight:400;padding:.5rem;border:1px solid var(--border);border-radius:8px}.cleaning-checklist-card-progress{font-size:.88rem;color:var(--text);margin-top:.35rem;font-weight:600}.calibration-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.calibration-header-date{position:relative;flex:0 0 auto;margin-top:.15rem;font-size:.82rem;font-weight:500;color:var(--text-muted);text-align:right;white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;outline-offset:2px}.calibration-date-hold-progress{position:absolute;left:0;right:0;bottom:-4px;height:3px;border-radius:2px;background:var(--border);overflow:hidden}.calibration-date-hold-progress-fill{display:block;height:100%;background:var(--brand);transition:width .05s linear}.calibration-backdate-notice{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;font-size:.82rem;color:var(--text)}.calibration-use-today-link{background:none;border:none;padding:0;font:inherit;font-size:.8rem;color:var(--brand);text-decoration:underline;cursor:pointer}.calibration-date-picker-modal{width:min(360px,100%)}.calibration-date-picker-current{font-weight:600;margin:0 0 .5rem}.calibration-date-picker-field{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0;font-size:.9rem;font-weight:600}.calibration-date-picker-field input[type=date]{font:inherit;font-weight:400;padding:.5rem;border:1px solid var(--border);border-radius:8px}.calibration-date-picker-bounds{font-size:.8rem;color:var(--text-muted);margin:0 0 .5rem}.calibration-duplicate-confirm-modal{width:min(400px,100%)}.cleaning-checklist-card-footer{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.35rem .75rem;margin-top:.5rem}.cleaning-checklist-status-badge{display:inline-flex;align-items:center;flex-shrink:0;border-radius:999px;padding:.18rem .6rem;font-size:.78rem;font-weight:700}.cleaning-checklist-last-completed{flex:1 1 auto;min-width:0;font-size:.72rem;font-weight:500;color:var(--text-muted);text-align:right;cursor:default}.cleaning-checklist-status-badge.status-not-started{color:var(--text-muted);background:var(--surface-soft)}.cleaning-checklist-status-badge.status-in-progress{color:#92400e;background:#fef3c7}.cleaning-checklist-status-badge.status-complete{color:var(--brand);background:var(--brand-soft)}.cleaning-location-inactive-badge{display:inline-flex;align-items:center;margin-left:.5rem;border-radius:999px;padding:.12rem .55rem;font-size:.72rem;font-weight:700;color:var(--text-muted);background:var(--surface-soft);vertical-align:middle}.cleaning-checklist-card-initials{margin-top:.4rem;font-size:.82rem;font-weight:600;color:var(--brand)}.mobile-back-link{display:inline-flex;align-items:center;gap:.25rem;font-size:.9rem;font-weight:600;color:var(--brand);text-decoration:none;margin-bottom:.75rem}.cleaning-checklist-completed-banner{display:flex;flex-direction:column;gap:.15rem;margin:.6rem 0 .75rem;padding:.55rem .7rem;border-radius:10px;background:var(--brand-soft);color:var(--brand);font-weight:700;font-size:.92rem}.cleaning-checklist-completed-date{font-weight:500;font-size:.8rem;color:var(--text-muted)}.cleaning-checklist-instructions-panel{margin:.6rem 0 .75rem;padding:.65rem .8rem;border-radius:10px;border:1px solid var(--border);background:var(--surface-soft)}.cleaning-checklist-instructions-panel h3{margin:0 0 .3rem;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.cleaning-checklist-instructions-panel p{margin:0;font-size:.92rem;line-height:1.45;color:var(--text);white-space:pre-wrap;word-break:break-word}.cleaning-checklist-task-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.6rem}.cleaning-checklist-task-row{display:flex;align-items:center;gap:.65rem;width:100%;min-height:52px;padding:.7rem .8rem;border:2px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:1rem;text-align:left;cursor:pointer}.cleaning-checklist-task-row.checked{border-color:var(--brand);background:var(--brand-soft);color:var(--brand);font-weight:600}.cleaning-checklist-task-row:disabled{opacity:.7;cursor:not-allowed}.cleaning-checklist-task-row.pending-sync{border-style:dashed;border-color:#b45309}.cleaning-checklist-pending-sync-badge{margin-left:auto;flex-shrink:0;border-radius:999px;padding:.12rem .55rem;font-size:.72rem;font-weight:700;color:#92400e;background:#fef3c7}.cleaning-checklist-checkbox{font-size:1.4rem;line-height:1;flex-shrink:0}.cleaning-checklist-task-name{flex:1}.cleaning-checklist-field{display:flex;flex-direction:column;gap:.4rem}.cleaning-checklist-field-label{font-size:.92rem;font-weight:600;color:var(--text)}.cleaning-checklist-response-input{width:100%;min-height:48px;padding:.65rem .8rem;border:2px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:1rem;box-sizing:border-box}textarea.cleaning-checklist-response-input{min-height:84px;resize:vertical}.cleaning-checklist-response-input.filled{border-color:var(--brand)}.cleaning-checklist-response-input:disabled{opacity:.7;cursor:not-allowed}.cleaning-checklist-number-input-wrap{display:flex;align-items:center;gap:.5rem}.cleaning-checklist-number-input-wrap .cleaning-checklist-response-input{flex:1}.cleaning-checklist-number-unit{font-size:.9rem;font-weight:600;color:var(--text-muted);flex-shrink:0}.desktop-back-link{display:inline-block;margin-top:.5rem;font-size:.85rem;font-weight:600;color:var(--text-muted);text-decoration:none}.desktop-back-link:hover{color:var(--brand, #0f7660);text-decoration:underline}.cleaning-report-summary-list{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.cleaning-report-summary-card{display:block;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:1rem;text-decoration:none;color:inherit;cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease,transform .15s ease}.cleaning-report-summary-card:hover,.cleaning-report-summary-card:focus-visible{border-color:var(--brand, #0f7660);box-shadow:0 4px 14px #00000014;transform:translateY(-1px)}.cleaning-report-summary-card:focus-visible{outline:2px solid var(--brand, #0f7660);outline-offset:2px}.cleaning-report-summary-card-title{margin-bottom:.75rem}.cleaning-report-summary-card-stats{display:flex;flex-direction:column;gap:.2rem;font-size:.82rem;color:var(--text-muted)}.cleaning-report-summary-card-cta{margin-top:.75rem;font-size:.85rem;font-weight:600;color:var(--brand, #0f7660)}.cleaning-report-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:1rem}.cleaning-report-card-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.cleaning-report-card-summary{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;font-size:.82rem;color:var(--text-muted);text-align:right}.cleaning-reports-empty{color:var(--text-muted);font-size:.9rem;margin:0}.cleaning-reports-scroll-hint{margin-top:.75rem;margin-bottom:0}.cleaning-reports-scroll-container{position:relative;margin-top:.5rem}.cleaning-reports-table-wrapper{overflow-x:auto;scrollbar-width:auto;scrollbar-color:var(--brand, #0f7660) var(--surface-soft);padding-bottom:.4rem}.cleaning-reports-table-wrapper::-webkit-scrollbar{height:10px}.cleaning-reports-table-wrapper::-webkit-scrollbar-track{background:var(--surface-soft);border-radius:999px}.cleaning-reports-table-wrapper::-webkit-scrollbar-thumb{background:var(--brand, #0f7660);border-radius:999px}.cleaning-reports-scroll-fade{position:absolute;top:0;bottom:.4rem;width:32px;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:2}.cleaning-reports-scroll-fade.visible{opacity:1}.cleaning-reports-scroll-fade-left{left:0;background:linear-gradient(to right,rgba(31,42,46,.12),transparent)}.cleaning-reports-scroll-fade-right{right:0;background:linear-gradient(to left,rgba(31,42,46,.12),transparent)}.cleaning-reports-table{border-collapse:collapse}.cleaning-reports-table th,.cleaning-reports-table td{padding:.85rem .9rem;border-bottom:1px solid var(--border);font-size:.85rem;text-align:center;white-space:nowrap}.cleaning-reports-table th{color:var(--text-muted);font-weight:600;white-space:normal;min-width:130px;word-break:break-word;vertical-align:bottom;text-align:center}.cleaning-reports-table th.cleaning-reports-col-date,.cleaning-reports-table th.cleaning-reports-col-employee,.cleaning-reports-col-date,.cleaning-reports-col-employee{text-align:left;background:var(--surface);min-width:auto;width:auto;white-space:nowrap}.cleaning-reports-col-date{position:sticky;left:0;z-index:1;border-right:1px solid var(--border);box-shadow:2px 0 4px #1f2a2e14}.cleaning-reports-col-employee{position:sticky;right:0;z-index:1;border-left:1px solid var(--border);box-shadow:-2px 0 4px #1f2a2e14}.cleaning-reports-check-cell{min-width:130px}.cleaning-reports-table td.cleaning-reports-text-cell{min-width:160px;max-width:320px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;text-align:left;vertical-align:top;line-height:1.4}.cleaning-reports-checkmark{color:var(--brand);font-weight:800;font-size:1.35rem;line-height:1}.cleaning-report-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.cleaning-report-filter-fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.cleaning-report-filter-fields label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text-muted);min-width:150px}.cleaning-report-filter-fields input,.cleaning-report-filter-fields .row-actions button,.cleaning-report-print-button{height:44px}.cleaning-report-print-button{flex-shrink:0}.cleaning-report-clear-button{position:relative;overflow:hidden}.cleaning-report-clear-button.delete-mode-active{border-color:#c0392b;color:#c0392b}.cleaning-report-clear-label{position:relative;z-index:1}.cleaning-report-clear-hold-progress{position:absolute;top:0;right:0;bottom:0;left:0;background:#c0392b38;transform-origin:left;animation-name:cleaning-report-hold-fill;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes cleaning-report-hold-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.cleaning-report-delete-mode-banner{font-weight:600}.cleaning-reports-table th.cleaning-reports-col-delete,.cleaning-reports-col-delete{text-align:center;min-width:auto;width:auto;white-space:nowrap}.cleaning-report-delete-row-button{border:1px solid #c0392b;background:#c0392b;color:#fff;border-radius:8px;padding:.4rem .75rem;font-size:.8rem;font-weight:600;cursor:pointer}.cleaning-report-delete-row-button:hover{background:#a5311f}.cleaning-report-delete-modal{width:min(520px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:1.15rem}.cleaning-report-delete-modal h3{margin:0 0 .6rem;font-size:1.05rem}.cleaning-report-delete-modal-warning{font-weight:600}.cleaning-report-delete-modal-details{margin:.75rem 0;display:grid;grid-template-columns:auto 1fr;gap:.3rem .75rem}.cleaning-report-delete-modal-details dt{color:var(--text-muted);font-size:.82rem}.cleaning-report-delete-modal-details dd{margin:0;font-size:.9rem}.cleaning-report-delete-modal-task-row{display:contents}.cleaning-report-delete-modal-reason-field{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text-muted);margin-top:.75rem}.cleaning-report-delete-modal-reason-field textarea{font:inherit;padding:.6rem;border:1px solid var(--border);border-radius:8px;resize:vertical}.cleaning-report-delete-modal-confirm{background:#c0392b;border-color:#c0392b}.cleaning-report-delete-modal-confirm:disabled{opacity:.5;cursor:not-allowed}.food-safety-print-report{display:none}.food-safety-print-measure{position:fixed;top:0;left:-99999px;width:980px;background:#fff}.food-safety-print-measure .food-safety-print-header{color:#000;margin-bottom:3mm}.food-safety-print-measure .food-safety-print-header-top{display:flex;justify-content:space-between;font-size:9pt;font-weight:700}.food-safety-print-measure .food-safety-print-title{margin-top:1mm;font-size:12pt;font-weight:700}.food-safety-print-measure .food-safety-print-location{margin-top:.5mm;font-size:10.5pt;font-weight:600}.food-safety-print-measure .food-safety-print-location-notes{margin-top:.5mm;font-size:7pt;font-weight:400;font-style:italic;color:#333}.food-safety-print-measure .food-safety-print-table{width:100%;border-collapse:collapse;table-layout:auto}.food-safety-print-measure .food-safety-print-table th,.food-safety-print-measure .food-safety-print-table td{border:1px solid #000;padding:.8mm 1.5mm;font-size:8pt;line-height:1.15;color:#000;text-align:center}.food-safety-print-measure .food-safety-print-table th{padding:1mm 1.5mm;font-size:7.5pt;font-weight:700;background:#fff}.food-safety-print-measure .food-safety-print-table-compact th{padding:.6mm 1mm;font-size:6.5pt;line-height:1.05}.food-safety-print-measure .food-safety-print-table-compact td{padding:.6mm 1mm;font-size:7.5pt}.food-safety-print-measure .food-safety-print-col-date,.food-safety-print-measure .food-safety-print-col-initials{text-align:left;white-space:nowrap}.food-safety-print-measure .food-safety-print-check-cell{font-weight:700}.food-safety-print-measure .food-safety-print-text-cell{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;min-width:25mm;max-width:60mm}.food-safety-print-measure .food-safety-print-signature{margin-top:3mm;display:flex;flex-direction:row;align-items:flex-end;gap:8mm}.food-safety-print-measure .food-safety-print-signature-field{display:flex;align-items:flex-end;gap:3mm;font-size:9pt}.food-safety-print-measure .food-safety-print-signature-field-main{flex:1}.food-safety-print-measure .food-safety-print-signature-label{white-space:nowrap;font-weight:600}.food-safety-print-measure .food-safety-print-signature-line{flex:1;max-width:110mm;height:5mm;border-bottom:1px solid #000}.food-safety-print-measure .food-safety-print-signature-line-short{flex:0 0 auto;width:40mm}@media print{@page{size:landscape;margin:10mm}.food-safety-print-report{display:block!important;position:absolute!important;top:0!important;left:0!important;width:100%!important;height:auto!important;overflow:visible!important;background:#fff}.food-safety-print-page{break-after:page;page-break-after:always}.food-safety-print-page:last-child{break-after:auto;page-break-after:auto}.food-safety-print-header{color:#000;margin-bottom:3mm}.food-safety-print-header-top{display:flex;justify-content:space-between;font-size:9pt;font-weight:700}.food-safety-print-title{margin-top:1mm;font-size:12pt;font-weight:700}.food-safety-print-location{margin-top:.5mm;font-size:10.5pt;font-weight:600}.food-safety-print-location-notes{margin-top:.5mm;font-size:7pt;font-weight:400;font-style:italic;color:#333}.food-safety-print-table{width:100%;border-collapse:collapse;table-layout:auto}.food-safety-print-table th,.food-safety-print-table td{border:1px solid #000;padding:.8mm 1.5mm;font-size:8pt;line-height:1.15;color:#000;text-align:center}.food-safety-print-table th{padding:1mm 1.5mm;font-size:7.5pt;font-weight:700;background:#fff}.food-safety-print-table-compact th{padding:.6mm 1mm;font-size:6.5pt;line-height:1.05}.food-safety-print-table-compact td{padding:.6mm 1mm;font-size:7.5pt}.food-safety-print-table thead{display:table-header-group}.food-safety-print-table tr{break-inside:avoid;page-break-inside:avoid}.food-safety-print-col-date,.food-safety-print-col-initials{text-align:left;white-space:nowrap}.food-safety-print-check-cell{font-weight:700}.food-safety-print-text-cell{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;min-width:25mm;max-width:60mm}.food-safety-print-signature{margin-top:3mm;display:flex;flex-direction:row;align-items:flex-end;gap:8mm;break-inside:avoid;page-break-inside:avoid}.food-safety-print-signature-field{display:flex;align-items:flex-end;gap:3mm;font-size:9pt}.food-safety-print-signature-field-main{flex:1}.food-safety-print-signature-label{white-space:nowrap;font-weight:600}.food-safety-print-signature-line{flex:1;max-width:110mm;height:5mm;border-bottom:1px solid #000}.food-safety-print-signature-line-short{flex:0 0 auto;width:40mm}}.cleaning-checklist-complete-button-wrap{margin-top:1.25rem}.cleaning-checklist-complete-button{width:100%;min-height:56px;font-size:1.05rem}.cleaning-recent-completion-card{margin:1.5rem 0 1rem;padding:.85rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.cleaning-recent-completion-card h3{margin:0;font-size:.95rem;font-weight:700;color:var(--text)}.cleaning-recent-completion-subtitle{margin:.15rem 0 .75rem;font-size:.78rem;color:var(--text-muted)}.cleaning-recent-completion-empty{margin:0;font-size:.9rem;color:var(--text-muted)}.cleaning-recent-completion-meta{display:flex;flex-direction:column;gap:.1rem;margin-bottom:.65rem;padding-bottom:.65rem;border-bottom:1px solid var(--border)}.cleaning-recent-completion-datetime{font-size:.9rem;font-weight:600;color:var(--text)}.cleaning-recent-completion-employee{font-size:.8rem;color:var(--text-muted)}.cleaning-recent-completion-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.cleaning-recent-completion-row{display:flex;flex-direction:column;gap:.1rem}.cleaning-recent-completion-row-task{font-size:.85rem;font-weight:600;color:var(--text);overflow-wrap:anywhere;word-break:break-word}.cleaning-recent-completion-row-value{font-size:.9rem;color:var(--text);overflow-wrap:anywhere;word-break:break-word}.cleaning-recent-completion-row-missing .cleaning-recent-completion-row-value{color:var(--text-muted);font-style:italic}.cleaning-recent-completion-toggle{margin-top:.75rem;padding:.5rem .8rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--brand);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;width:100%}.form-hint{margin-top:.4rem;font-size:.82rem;color:var(--text-muted)}.backfill-tab{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.backfill-task-chip{padding:.25rem .65rem;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);font-size:.82rem;color:var(--text)}.backfill-location-info{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem;align-items:center}.backfill-location-notes{flex-basis:100%;margin:.4rem 0 0;white-space:pre-wrap}.backfill-task-chip-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.backfill-task-select-chip{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.5rem .75rem;border-radius:10px;border:1px solid var(--border);background:var(--surface-soft);cursor:pointer;font-size:.85rem;color:var(--text);text-align:left;transition:border-color .15s ease,background .15s ease}.backfill-task-select-chip:hover{border-color:var(--brand, #0f7660)}.backfill-task-select-chip.active{border-color:var(--brand, #0f7660);background:var(--brand-soft, #e6f4ef);font-weight:600}.backfill-task-select-chip-count{font-size:.72rem;color:var(--text-muted);font-weight:400}.backfill-calendar-grid-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1rem}.backfill-calendar{border:1px solid var(--border);border-radius:10px;padding:.6rem}.backfill-calendar-title{font-size:.85rem;font-weight:600;margin-bottom:.4rem;color:var(--text);text-align:center}.backfill-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.backfill-calendar-weekday{text-align:center;font-size:.7rem;color:var(--text-muted);padding-bottom:2px}.backfill-calendar-cell{position:relative;text-align:center;font-size:.78rem;padding:.4rem 0;border-radius:6px;border:1px solid transparent;background:none;color:var(--text);cursor:default}.backfill-calendar-cell-empty{visibility:hidden}.backfill-calendar-cell-available{background:var(--surface);border-color:var(--border);cursor:pointer}.backfill-calendar-cell-available:hover{border-color:var(--brand, #0f7660)}.backfill-calendar-cell-selected{background:#15803d;border-color:#15803d;color:#fff;font-weight:700;cursor:pointer}.backfill-calendar-cell-existing{background:var(--surface-soft);color:var(--text-muted);text-decoration:line-through;cursor:not-allowed}.backfill-calendar-cell-future,.backfill-calendar-cell-outOfRange{background:none;color:var(--text-muted);opacity:.4;cursor:not-allowed}.backfill-calendar-dot{position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:#d97706}.backfill-calendar-legend{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:.9rem;font-size:.78rem;color:var(--text-muted)}.backfill-calendar-legend span{display:inline-flex;align-items:center;gap:.35rem}.backfill-legend-swatch{position:relative;display:inline-block;width:.9rem;height:.9rem;border-radius:4px;border:1px solid var(--border)}.backfill-legend-swatch.available{background:var(--surface)}.backfill-legend-swatch.selected{background:#15803d;border-color:#15803d}.backfill-legend-swatch.existing{background:var(--surface-soft)}.backfill-legend-swatch.disabled{opacity:.4}.backfill-legend-swatch .backfill-calendar-dot{bottom:-3px}.backfill-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem;margin-top:.75rem;font-size:.88rem}.backfill-summary-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted)}.backfill-preview-table{white-space:nowrap}.backfill-success{color:var(--brand, #0f7660);font-weight:600}.csv-template-summary{margin:.6rem 0}.csv-template-grid-wrapper{margin-top:.75rem;overflow:auto;max-height:480px;border:1px solid var(--border);border-radius:10px}.csv-template-grid{min-width:100%;font-size:.82rem}.csv-template-grid th,.csv-template-grid td{white-space:nowrap;padding:.35rem .5rem}.csv-template-grid select{display:block;margin-top:.25rem;font-size:.78rem}.csv-template-header-row{background:var(--brand-soft)}.csv-template-row-controls{display:flex;align-items:center;gap:.3rem;color:var(--text-muted)}.csv-template-row-controls button{font-size:.7rem;padding:.1rem .35rem}.csv-template-fixed-cell{background:var(--brand-soft);outline:1px dashed var(--brand, #0f7660)}.csv-template-value-mapping,.csv-template-rules,.csv-template-preview{margin-top:1.25rem}.csv-template-rule-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.csv-template-rule-condition{display:inline-flex;gap:.3rem;align-items:center}.csv-template-save-row{display:flex;align-items:center;gap:.6rem;margin-top:1rem}.csv-template-preview-group{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.csv-template-reconciliation td:first-child{color:var(--text-muted)}.csv-template-issue-list{margin:.5rem 0}.csv-template-warning-list{color:#a24b12}.csv-template-pending-section{margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border)}.csv-template-pending-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.csv-template-pending-header h3{margin:0}.csv-template-pending-card{margin-top:.75rem;padding:.75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.csv-template-pending-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}.csv-weekly-card{margin-top:.9rem;padding:1rem 1.15rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 1px 2px #1f2a2e0a}.csv-weekly-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.csv-weekly-card-identity{min-width:0}.csv-weekly-card-title{margin:0 0 .5rem;font-size:1.05rem;overflow-wrap:anywhere}.csv-weekly-card-lots{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.csv-weekly-card-lots-label{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted)}.csv-weekly-card-lots ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.15rem}.csv-weekly-card-lots li{font-size:.88rem;white-space:nowrap}.csv-weekly-lot-date{color:var(--text-muted)}.csv-weekly-show-all-lots{margin-top:.15rem;padding:0;border:none;background:none;color:var(--brand);font-size:.82rem;font-weight:600;cursor:pointer;text-align:left}.csv-weekly-show-all-lots:hover{text-decoration:underline}.csv-weekly-card-badges{display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:flex-end;gap:.4rem;max-width:100%}.csv-weekly-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.22rem .65rem;font-size:.78rem;font-weight:600;white-space:nowrap}.csv-weekly-badge-success{color:#0a5e4c;background:var(--brand-soft)}.csv-weekly-badge-warning{color:#a24b12;background:#fff1e6}.csv-weekly-badge-error{color:#9a1e1e;background:#fde8e8}.csv-weekly-badge-neutral{color:var(--text-muted);background:var(--surface-soft);border:1px solid var(--border)}.csv-weekly-size-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.6rem;margin-top:1rem}.csv-weekly-size-box{padding:.6rem .5rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);text-align:center}.csv-weekly-size-name{font-size:.78rem;font-weight:600;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-weekly-size-kg{margin-top:.25rem;font-size:1.08rem;font-weight:700;color:var(--text)}.csv-weekly-size-unit{font-size:.75rem;font-weight:500;color:var(--text-muted)}.csv-weekly-unresolved-list{margin:.75rem 0 0;padding-left:1.1rem;color:#a24b12;font-size:.88rem}.csv-weekly-summary-row{display:flex;align-items:stretch;justify-content:space-between;flex-wrap:wrap;gap:.9rem;margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--border)}.csv-weekly-summary-totals{display:flex;gap:.6rem;flex-wrap:wrap}.csv-weekly-total-box,.csv-weekly-afw-box{padding:.5rem .85rem;border-radius:10px;min-width:150px}.csv-weekly-total-box{background:var(--brand-soft);border:1px solid #b9e6d8}.csv-weekly-afw-box{background:var(--surface-soft);border:1px solid var(--border)}.csv-weekly-box-label{font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.csv-weekly-total-box .csv-weekly-box-value{margin-top:.15rem;font-size:1.4rem;font-weight:800;color:#0a5e4c}.csv-weekly-afw-box .csv-weekly-box-value{margin-top:.15rem;font-size:1.05rem;font-weight:700;color:var(--text)}.csv-weekly-area-not-set-link{display:inline-block;margin-top:.15rem;font-size:.95rem;font-weight:700;color:#a24b12;text-decoration:none}.csv-weekly-area-not-set-link:hover{text-decoration:underline}.csv-weekly-recon-details{display:flex;flex-direction:column;justify-content:center;gap:.15rem;font-size:.82rem;color:var(--text-muted)}.csv-weekly-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.csv-weekly-import-status{margin:.5rem 0 0;font-size:.88rem}.csv-resolve-label-row{margin-top:1rem}.csv-resolve-label-field{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;margin-top:.6rem}.csv-resolve-label-field label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.csv-resolve-label-field select,.csv-resolve-label-field input{min-width:220px}.csv-resolve-label-highlight{border:1px solid var(--brand);border-radius:8px;padding:.35rem .5rem;background:var(--brand-soft)}.csv-resolve-label-hint{margin:.6rem 0 0;font-size:.85rem;color:var(--text-muted);font-style:italic}.csv-import-confirm-modal{width:min(560px,100%)}.csv-import-confirm-subtitle{margin:.15rem 0 0;font-weight:600;color:var(--text-muted)}.csv-import-confirm-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.25rem;margin:1rem 0;padding:.85rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.csv-import-confirm-summary dt{font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.csv-import-confirm-summary dd{margin:.15rem 0 0;font-weight:600;color:var(--text)}.csv-import-confirm-lots{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.15rem}.csv-import-confirm-explanation{color:var(--text-muted);font-size:.92rem}.csv-import-confirm-spinner{display:inline-block;width:.9rem;height:.9rem;margin-right:.4rem;vertical-align:-.15rem;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:csv-import-confirm-spin .7s linear infinite}@keyframes csv-import-confirm-spin{to{transform:rotate(360deg)}}@media (max-width: 600px){.csv-import-confirm-summary{grid-template-columns:1fr}}@media (max-width: 900px){.csv-weekly-size-strip{grid-template-columns:repeat(3,1fr)}.csv-weekly-card-top{flex-direction:column}.csv-weekly-card-badges{justify-content:flex-start}}@media (max-width: 600px){.csv-weekly-size-strip{grid-template-columns:repeat(2,1fr)}.csv-weekly-summary-row{flex-direction:column;align-items:stretch}.csv-weekly-actions{margin-left:0;justify-content:stretch}.csv-weekly-actions button{flex:1}}.csv-template-legend{margin-top:1rem;padding:.75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.csv-template-legend-label{font-weight:600;margin-right:.5rem}.csv-template-legend-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.csv-template-legend-chip{border:1px solid transparent;border-radius:999px;padding:.25rem .65rem;font-size:.78rem;font-weight:500;cursor:pointer}.csv-template-legend-chip-active{border-color:currentColor;box-shadow:0 0 0 1px currentColor inset}.csv-template-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.csv-template-active-tool{border:1px solid transparent;border-radius:8px;padding:.35rem .7rem;font-weight:600;font-size:.85rem}.csv-template-inline-picker{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;color:var(--text-muted)}.csv-template-toolbar-spacer{flex:1}.csv-template-column-badge{font-size:.68rem;font-weight:600;white-space:nowrap}.csv-template-grid td{cursor:pointer;-webkit-user-select:none;user-select:none}.csv-template-row-number{display:inline-block;min-width:1.4em;padding:.05rem .3rem;border-radius:4px;cursor:pointer}.csv-template-row-number:hover{background:var(--surface-soft);text-decoration:underline}.csv-template-cell-selected{outline:2px solid var(--brand, #0f7660);outline-offset:-2px}.csv-template-cell-flash{animation:csv-template-flash .6s ease-out}@keyframes csv-template-flash{0%{box-shadow:0 0 0 2px var(--brand, #0f7660) inset}to{box-shadow:0 0 0 0 transparent inset}}.csv-template-rules-preview{margin-top:1rem}.csv-template-rules-preview ul{margin:.4rem 0 0;padding-left:1.2rem}.csv-template-advanced-toggle{margin-top:1rem}.csv-template-mapped-results{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.csv-template-mapped-results-scroll{overflow:auto;max-height:420px;border:1px solid var(--border);border-radius:10px;margin-top:.5rem}.csv-template-rate-limit-notice,.csv-template-restored-notice{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.csv-template-rate-limit-notice p,.csv-template-restored-notice p{margin:.15rem 0}.csv-template-modal .csv-template-modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.csv-template-modal-actions .secondary{border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);font:inherit;font-weight:600;min-height:44px;padding:.6rem 1rem;cursor:pointer}.csv-template-modal-actions .secondary:hover:not(:disabled){background:var(--border)}.csv-template-modal-actions .secondary:disabled{color:var(--text-muted);cursor:not-allowed}.csv-template-saved-section{margin-top:1.5rem}.csv-template-saved-actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.5rem}.csv-template-mappings-modal{max-width:640px;max-height:calc(100vh - 4rem);overflow-y:auto}.csv-template-mappings-view h4{margin:1rem 0 .4rem}.maintenance-page{padding-bottom:1rem}.maintenance-page h2{font-size:1.1rem}.maintenance-back-link{border:none;background:none;color:var(--brand);font-weight:700;font-size:.9rem;padding:.4rem 0;margin-bottom:.4rem}.maintenance-tab-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem;margin:.6rem 0}.maintenance-tab-button{display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.72rem;font-weight:600;line-height:1.15;padding:.4rem .15rem;min-height:44px;text-align:center}.maintenance-tab-button.active{background:var(--active);color:#0a5e4c;border-color:var(--brand);font-weight:700}@media (max-width: 374px){.maintenance-tab-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-tab-button{font-size:.78rem}}.maintenance-tab-panel{display:grid;gap:.6rem}.maintenance-toolbar{display:flex;gap:.4rem;align-items:center}.maintenance-page .maintenance-search-input{flex:1 1 auto;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.45rem .6rem;font:inherit;font-size:.88rem;min-height:44px}.maintenance-page .maintenance-scan-button{flex-shrink:0;border:1px solid var(--brand);border-radius:8px;background:var(--brand);color:#fff;font:inherit;font-size:.82rem;font-weight:700;padding:.45rem .65rem;min-height:44px;white-space:nowrap}.maintenance-filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.maintenance-filter-row select{width:100%;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.4rem .35rem;font:inherit;font-size:.76rem;min-height:44px}@media (max-width: 374px){.maintenance-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-filter-row select:last-child{grid-column:1 / -1}}.maintenance-chip-row{display:flex;gap:.35rem;overflow-x:auto;padding-bottom:.15rem}.maintenance-page .maintenance-chip{flex-shrink:0;display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.74rem;font-weight:600;padding:0 .65rem;min-height:44px;white-space:nowrap}.maintenance-page .maintenance-chip.active{background:var(--surface-soft);color:var(--text);border-color:var(--text-muted);font-weight:700}.maintenance-page .maintenance-chip-overdue.active{background:#fee2e2;color:#b42318;border-color:#b42318}.maintenance-page .maintenance-chip-due-soon.active{background:#fef3c7;color:#92400e;border-color:#92400e}.maintenance-card-list{display:grid;gap:.65rem}.maintenance-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:.9rem;display:grid;gap:.5rem}.maintenance-page .maintenance-equipment-card{width:100%;text-align:left;font:inherit;font-weight:400;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.75rem;cursor:pointer}.maintenance-page .maintenance-equipment-card:active{background:var(--surface-soft)}.maintenance-card-top-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.maintenance-card-title{font-weight:700;font-size:.95rem}.maintenance-card-meta-row{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.78rem;color:var(--text-muted)}.maintenance-empty-state{text-align:center;padding:2rem 1rem;color:var(--text-muted);background:var(--surface-soft);border-radius:14px}.maintenance-status-badge{display:inline-flex;align-items:center;flex-shrink:0;border-radius:999px;padding:.18rem .6rem;font-size:.75rem;font-weight:700;white-space:nowrap}.maintenance-status-badge.ok{color:var(--brand);background:var(--brand-soft)}.maintenance-status-badge.warning{color:#92400e;background:#fef3c7}.maintenance-status-badge.neutral{color:var(--text-muted);background:var(--surface-soft)}.maintenance-status-badge.danger{color:#b42318;background:#fee2e2}.maintenance-inactive-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.12rem .55rem;font-size:.7rem;font-weight:700;color:var(--text-muted);background:var(--surface-soft);margin-left:.4rem}.maintenance-detail-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.7rem}.maintenance-detail-header h2{margin:0;font-size:1.15rem}.maintenance-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;font-size:.85rem}.maintenance-detail-grid span{display:block;color:var(--text-muted);font-size:.72rem}.maintenance-instructions{background:var(--surface-soft);border-radius:10px;padding:.6rem .7rem;font-size:.85rem;white-space:pre-wrap}.maintenance-meter-value{font-size:1.3rem;font-weight:700;margin:0}.maintenance-schedule-row{border-top:1px solid var(--border);padding-top:.7rem;margin-top:.7rem;display:grid;gap:.3rem}.maintenance-schedule-row:first-of-type{border-top:none;padding-top:0;margin-top:0}.maintenance-history-list{display:grid;gap:.5rem;margin-top:.5rem}.maintenance-history-row{display:flex;flex-wrap:wrap;gap:.4rem .7rem;font-size:.8rem;background:var(--surface-soft);border-radius:10px;padding:.5rem .65rem}.maintenance-history-note{width:100%;color:var(--text-muted);font-style:italic}.maintenance-history-primary{width:100%;font-weight:700;color:var(--text);font-style:normal}.maintenance-button-row{display:flex;flex-wrap:wrap;gap:.5rem}.maintenance-button-row button{flex:1 1 auto;min-height:44px}.maintenance-page button,.maintenance-sheet button{border:1px solid var(--brand);border-radius:8px;background:var(--brand);color:#fff;font:inherit;font-size:.86rem;font-weight:700;padding:.5rem .75rem;min-height:44px;cursor:pointer}.maintenance-page button:disabled,.maintenance-sheet button:disabled{opacity:.6;cursor:not-allowed}.maintenance-page .btn-secondary,.maintenance-sheet .btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.maintenance-page .maintenance-danger-button,.maintenance-sheet .maintenance-danger-button{background:#fff;color:#b42318;border-color:#b42318}.maintenance-link-button{border:none!important;background:none!important;color:var(--brand)!important;font-weight:700;padding:.4rem 0!important;min-height:auto!important;text-align:left;width:fit-content}.maintenance-form{display:grid;gap:.75rem}.maintenance-form label{display:grid;gap:.3rem;font-size:.82rem;font-weight:600;color:var(--text-muted)}.maintenance-form input,.maintenance-form select,.maintenance-form textarea{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:.6rem .7rem;font:inherit;font-size:1rem;color:var(--text);min-height:44px}.maintenance-form textarea{min-height:70px;resize:vertical}.maintenance-checkbox-row{display:flex!important;flex-direction:row!important;align-items:center;gap:.5rem}.maintenance-checkbox-row input[type=checkbox]{width:20px;height:20px;min-height:auto;flex-shrink:0}.maintenance-checklist{display:grid;gap:.5rem;background:var(--surface-soft);border-radius:10px;padding:.6rem .7rem}.maintenance-confirm-block{display:grid;gap:.6rem}.maintenance-form-error-block{display:grid;gap:.4rem}.maintenance-segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.maintenance-segmented button{background:var(--surface);color:var(--text);border-color:var(--border)}.maintenance-segmented button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.maintenance-readonly-note{background:var(--surface-soft);border-radius:10px;padding:.6rem .7rem;font-size:.82rem;color:var(--text-muted)}.maintenance-sheet{width:min(560px,100%);max-height:min(88vh,100%);overflow-y:auto;background:var(--surface);border-radius:18px 18px 0 0;box-shadow:var(--shadow);align-self:end;justify-self:center;padding-bottom:max(1rem,env(safe-area-inset-bottom))}.maintenance-confirm-sheet{max-height:min(70vh,100%)}.maintenance-sheet-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-bottom:1px solid var(--border);padding:.9rem 1rem}.maintenance-sheet-header h2{margin:0;font-size:1.05rem}.maintenance-sheet-close{border:none!important;background:var(--surface-soft)!important;color:var(--text)!important;width:32px;height:32px;min-height:32px;border-radius:999px;padding:0!important;font-size:1rem;line-height:1}.maintenance-sheet-body{padding:1rem;display:grid;gap:.75rem}.maintenance-qr-scan-area{display:grid;gap:.75rem;text-align:center}.maintenance-qr-video{width:100%;border-radius:14px;background:#000;aspect-ratio:1 / 1;object-fit:cover}.maintenance-qr-hint{color:var(--text-muted);font-size:.85rem}.maintenance-qr-results{display:grid;gap:.4rem}.maintenance-qr-result-row{display:flex;justify-content:space-between;background:var(--surface-soft);color:var(--text);border-color:var(--border);text-align:left}.maintenance-qr-code-body{text-align:center;align-items:center;justify-items:center}.maintenance-qr-code-name{font-weight:700;margin:0}.maintenance-qr-code-asset{color:var(--text-muted);margin:0}.maintenance-qr-code-canvas{border:1px solid var(--border);border-radius:12px;padding:.6rem;background:#fff}.maintenance-restock-line-list{display:grid;gap:.5rem;max-height:40vh;overflow-y:auto}.maintenance-restock-line-row{display:grid;grid-template-columns:1fr 70px auto;align-items:center;gap:.5rem;background:var(--surface-soft);border-radius:10px;padding:.5rem .6rem}.maintenance-restock-line-row div{display:grid;min-width:0}.maintenance-restock-line-row strong{font-size:.85rem}.maintenance-restock-line-row span{font-size:.72rem;color:var(--text-muted)}.maintenance-restock-line-row input{border:1px solid var(--border);border-radius:8px;padding:.4rem;font:inherit;min-height:40px;width:100%}.maintenance-restock-line-detail{grid-template-columns:1fr auto auto}.maintenance-stock-count-row{background:var(--surface-soft);border-radius:10px;padding:.6rem .7rem;display:grid;gap:.4rem}.maintenance-stock-count-row input{border:1px solid var(--border);border-radius:8px;padding:.5rem;font:inherit;min-height:44px;flex:1 1 auto;min-width:0}.maintenance-review-table{width:100%;border-collapse:collapse;font-size:.78rem}.maintenance-review-table th,.maintenance-review-table td{border-bottom:1px solid var(--border);padding:.4rem .3rem;text-align:left}.maintenance-review-row-conflict{background:#fee2e2}.maintenance-setup-accordion{display:grid;gap:.25rem}.maintenance-accordion-header{width:100%;text-align:left;background:var(--surface-soft)!important;color:var(--text)!important;border-color:var(--border)!important;font-weight:700}.maintenance-setup-section{display:grid;gap:.6rem;padding:.6rem .2rem 1rem}.maintenance-setup-list{display:grid;gap:.5rem}.maintenance-setup-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem;background:var(--surface-soft);border-radius:10px;padding:.6rem .7rem;flex-wrap:wrap}.maintenance-setup-row>div:first-child{min-width:0;flex:1 1 160px}.maintenance-setup-row strong{font-size:.88rem}.maintenance-setup-row p{margin:.15rem 0 0;font-size:.76rem;color:var(--text-muted)}.maintenance-setup-row-inactive{opacity:.65}.maintenance-inline-form{background:var(--surface-soft);border-radius:12px;padding:.75rem}@media (max-width: 380px){.maintenance-detail-grid,.maintenance-restock-line-row{grid-template-columns:1fr}.maintenance-restock-line-row input{width:100%}}.lazy-route-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:3rem 1.5rem;text-align:center;color:var(--text-muted)}.lazy-route-spinner{display:inline-block;width:1.6rem;height:1.6rem;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:lazy-route-spin .7s linear infinite}@keyframes lazy-route-spin{to{transform:rotate(360deg)}}.lazy-route-error p{margin:0}.lazy-route-error p:first-child{color:var(--text);font-weight:600}.lazy-route-error button{margin-top:.4rem;border:1px solid var(--brand);border-radius:10px;background:var(--brand);color:#fff;font:inherit;font-weight:700;padding:.55rem 1.1rem;cursor:pointer}.csv-source-picker{margin:.5rem 0 .75rem}.csv-source-picker-actions{display:flex;flex-wrap:wrap;gap:.5rem}.csv-source-picker-list{margin-top:.75rem;overflow-x:auto}.csv-source-picker-meta{font-size:.78rem;color:var(--text-muted)}.csv-template-editor-layout{display:grid;gap:1rem;margin-top:.75rem;grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start}.csv-source-preview{position:sticky;top:.5rem;min-width:0;border:1px solid var(--border);border-radius:10px;padding:.5rem .75rem .25rem;background:var(--surface)}.csv-source-preview-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.csv-source-preview-meta{margin:0;font-size:.82rem;color:var(--text-muted);overflow-wrap:anywhere}.csv-source-preview-toggle{display:none}.csv-template-editor-controls{min-width:0}.csv-template-editor-controls .csv-template-toolbar{flex-wrap:wrap}.csv-template-column-header-text{font-weight:600;font-size:.74rem}.csv-template-column-occurrence{font-weight:400;color:var(--text-muted)}.csv-template-grid .csv-template-col-active{box-shadow:inset 2px 0 0 var(--brand),inset -2px 0 0 var(--brand)}.csv-template-grid th.csv-template-col-active{box-shadow:inset 2px 0 0 var(--brand),inset -2px 0 0 var(--brand),inset 0 2px 0 var(--brand)}.csv-template-column-map ul{list-style:none;padding:0;margin:.25rem 0 .75rem;font-size:.85rem}.csv-template-column-map li{padding:.2rem 0}.csv-template-column-map li.is-active{font-weight:600}.csv-template-column-map-field{display:inline-block;padding:.05rem .4rem;border:1px solid;border-radius:999px;font-size:.78rem}@media (max-width: 1100px){.csv-template-editor-layout{grid-template-columns:minmax(0,1fr)}.csv-source-preview{position:static}.csv-source-preview-toggle{display:inline-block}.csv-source-preview.is-collapsed .csv-source-preview-body{display:none}}.csv-template-pending-header{flex-wrap:wrap}.csv-template-pending-header h3{margin-right:auto}.csv-reprocess-summary{margin:.5rem 0 .75rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.csv-reprocess-summary p{margin:0 0 .35rem;font-weight:600}.csv-template-builder{--csv-tb-brand-dark: #0a5e4c;--csv-tb-brand-hover: #0b624f;--csv-tb-focus: rgba(15, 118, 96, .4);--csv-tb-warning: #8a4510;--csv-tb-warning-border: #e6b98c;--csv-tb-warning-soft: #fff4e8;--csv-tb-danger: #9a1e1e;--csv-tb-danger-border: #e9b7b7;--csv-tb-danger-soft: #fdeeee}.csv-tb-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;max-width:100%;padding:.45rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-size:.9rem;font-weight:600;line-height:1.2;text-align:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.csv-tb-btn:hover:not(:disabled){background:var(--surface-soft);border-color:#c2d4ca}.csv-tb-btn:active:not(:disabled){background:#e7efeb}.csv-tb-btn:focus-visible{outline:3px solid var(--csv-tb-focus);outline-offset:2px}.csv-tb-btn:disabled{cursor:not-allowed;opacity:.5}.csv-tb-btn--primary:disabled{border-color:var(--border);background:var(--surface-soft);color:var(--text-muted);opacity:.8}.csv-tb-btn[aria-busy=true]{cursor:progress}.csv-tb-btn-icon{flex:none}.csv-tb-btn--primary{border-color:var(--brand);background:var(--brand);color:#fff}.csv-tb-btn--primary:hover:not(:disabled){border-color:var(--csv-tb-brand-hover);background:var(--csv-tb-brand-hover)}.csv-tb-btn--primary:active:not(:disabled){background:var(--csv-tb-brand-dark)}.csv-tb-btn--outline{border-color:#9fcdbd;color:var(--csv-tb-brand-dark)}.csv-tb-btn--outline:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.csv-tb-btn--quiet{border-color:transparent;background:transparent;color:var(--text-muted)}.csv-tb-btn--quiet:hover:not(:disabled){border-color:var(--border);background:var(--surface-soft);color:var(--text)}.csv-tb-btn--warning{border-color:var(--csv-tb-warning-border);color:var(--csv-tb-warning)}.csv-tb-btn--warning:hover:not(:disabled){border-color:var(--csv-tb-warning);background:var(--csv-tb-warning-soft)}.csv-tb-btn--danger{border-color:var(--csv-tb-danger-border);color:var(--csv-tb-danger)}.csv-tb-btn--danger:hover:not(:disabled){border-color:var(--csv-tb-danger);background:var(--csv-tb-danger-soft)}.csv-tb-btn--sm{min-height:34px;padding:.3rem .75rem;font-size:.84rem}.csv-tb-select{min-height:40px;max-width:100%;padding:.4rem .6rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-size:.9rem}.csv-tb-select:focus-visible{outline:3px solid var(--csv-tb-focus);outline-offset:2px}.csv-tb-select-label{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;font-size:.9rem}.csv-template-builder>p{max-width:72ch;color:var(--text-muted)}.csv-tb-section.csv-template-pending-section{margin:1.25rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--border);border-bottom:none}.csv-tb-section-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.csv-tb-section-title{margin:0;font-size:1.08rem;color:var(--text)}.csv-tb-section-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto}.csv-tb-count{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;background:var(--brand-soft);color:var(--csv-tb-brand-dark);font-size:.8rem;font-weight:600}.csv-tb-section-hint,.csv-tb-section-description{margin:.4rem 0 0;max-width:72ch;color:var(--text-muted);font-size:.9rem}.csv-tb-section-hint{text-align:right;max-width:none;font-size:.82rem}.csv-tb-section--load{margin-top:1.5rem;padding:1.1rem 1.2rem 1.2rem;border:1px solid #cfe7de;border-radius:12px;background:linear-gradient(180deg,#f3faf7 0%,var(--surface) 100%)}.csv-tb-section--load+.csv-tb-inline-status,.csv-tb-section--load .csv-source-picker{margin-bottom:0}.csv-tb-section--load .csv-source-picker-actions{margin-top:.9rem;gap:.6rem}.csv-tb-inline-status{margin:.6rem 0 0;color:var(--text-muted);font-size:.88rem}.csv-tb-subsection{margin-top:1.25rem}.csv-tb-subsection-title{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.98rem}.csv-tb-empty{display:flex;align-items:center;gap:.85rem;margin-top:.9rem;padding:1rem 1.1rem;border:1px solid #cfe7de;border-radius:12px;background:var(--active);color:var(--csv-tb-brand-dark)}.csv-tb-empty--neutral{border-color:var(--border);background:var(--surface-soft);color:var(--text)}.csv-tb-empty-icon{flex:none;color:var(--brand)}.csv-tb-empty-title{margin:0;font-weight:700}.csv-tb-empty-body{margin:.15rem 0 0;color:var(--text-muted);font-size:.92rem}.csv-tb-template-card{margin-top:.9rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.csv-tb-template-card.is-disabled{background:var(--surface-soft)}.csv-tb-template-head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin-bottom:.35rem}.csv-tb-template-name{margin:0;font-size:1rem;overflow-wrap:anywhere}.csv-tb-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .6rem;border:1px solid;border-radius:999px;font-size:.78rem;font-weight:600}.csv-tb-badge-dot{width:.45rem;height:.45rem;border-radius:50%;background:currentColor}.csv-tb-badge--active{border-color:#bfe3d4;background:var(--brand-soft);color:var(--csv-tb-brand-dark)}.csv-tb-badge--disabled{border-color:var(--csv-tb-warning-border);background:var(--csv-tb-warning-soft);color:var(--csv-tb-warning)}.csv-tb-template-summary{margin:.2rem 0 0;color:var(--text);font-size:.92rem}.csv-tb-template-meta{display:flex;flex-wrap:wrap;gap:.15rem 1.25rem;margin:.55rem 0 0;color:var(--text-muted);font-size:.82rem}.csv-tb-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.9rem;padding-top:.85rem;border-top:1px solid var(--border)}.csv-tb-toolbar-group{display:inline-flex;gap:.5rem}.csv-tb-toolbar-divider{align-self:stretch;width:1px;margin:.2rem .25rem;background:var(--border)}.csv-template-builder .csv-weekly-actions{flex-wrap:wrap}.csv-template-builder .csv-template-pending-card-header{flex-wrap:wrap;align-items:center}@media (max-width: 640px){.csv-tb-btn,.csv-tb-btn--sm{min-height:44px}.csv-tb-section-actions{width:100%;margin-left:0}.csv-tb-section-actions .csv-tb-btn,.csv-tb-section--load .csv-source-picker-actions .csv-tb-btn{flex:1 1 auto}.csv-tb-section-hint{text-align:left}.csv-tb-section--load{padding:1rem}.csv-tb-toolbar-divider{display:none}.csv-tb-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr))}.csv-tb-toolbar-group{display:contents}.csv-tb-select{min-height:44px;width:100%}.csv-template-builder.coming-soon-card,.csv-tb-template-card,.csv-template-builder .csv-weekly-card{padding:.85rem}.csv-template-builder .csv-weekly-card-lots li{white-space:normal}.csv-template-builder .csv-weekly-size-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.csv-template-builder .csv-weekly-size-box{min-width:0}.csv-template-builder .csv-weekly-size-kg{font-size:.98rem;white-space:nowrap}.csv-template-builder .csv-weekly-size-unit{white-space:normal}}@media (prefers-reduced-motion: reduce){.csv-tb-btn{transition:none}}.ya-page{--csv-tb-brand-dark: #0a5e4c;--csv-tb-brand-hover: #0b624f;--csv-tb-focus: rgba(15, 118, 96, .4);--csv-tb-warning: #8a4510;--csv-tb-warning-border: #e6b98c;--csv-tb-warning-soft: #fff4e8;--csv-tb-danger: #9a1e1e;--csv-tb-danger-border: #e9b7b7;--csv-tb-danger-soft: #fdeeee}.ya-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ya-page-header p{max-width:72ch}.ya-card{margin-top:1rem;padding:1.1rem 1.2rem 1.2rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow);min-width:0}.ya-card-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem 1rem}.ya-card-title{margin:0;font-size:1.08rem;color:var(--text)}.ya-card-description{margin:.3rem 0 0;max-width:72ch;color:var(--text-muted);font-size:.9rem}.ya-card-meta{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;background:var(--brand-soft);color:var(--csv-tb-brand-dark);font-size:.8rem;font-weight:600;white-space:nowrap}.ya-alert{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-top:1rem;padding:.9rem 1.1rem;border:1px solid var(--csv-tb-danger-border);border-left:4px solid var(--csv-tb-danger);border-radius:12px;background:var(--csv-tb-danger-soft)}.ya-alert-title{margin:0;color:var(--csv-tb-danger);font-weight:700}.ya-alert-body{margin:.2rem 0 0;color:var(--text);font-size:.9rem}.ya-empty{margin-top:.9rem;padding:1.1rem 1.2rem;border:1px dashed #bfdcd0;border-radius:12px;background:var(--active)}.ya-empty-title{margin:0;color:var(--csv-tb-brand-dark);font-weight:700}.ya-empty-body{margin:.2rem 0 0;color:var(--text-muted);font-size:.9rem}.ya-unavailable{margin:.9rem 0 0;color:var(--text-muted);font-size:.9rem}.ya-footnote{margin:.6rem 0 0;color:var(--text-muted);font-size:.82rem}.ya-filters{border-color:#cfe7de;background:linear-gradient(180deg,#f3faf7 0%,var(--surface) 100%)}.ya-filters-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .75rem}.ya-filters-title{margin:0;font-size:.95rem;color:var(--csv-tb-brand-dark)}.ya-active-filter{display:inline-flex;align-items:center;padding:.15rem .65rem;border:1px solid #bfe3d4;border-radius:999px;background:var(--surface);color:var(--csv-tb-brand-dark);font-size:.82rem;font-weight:600}.ya-filters-note{flex-basis:100%;margin:0;color:var(--text-muted);font-size:.84rem}.ya-filters-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1rem;margin-top:.85rem}.ya-filter-fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;min-width:0}.ya-field{display:flex;flex-direction:column;gap:.3rem;min-width:9rem}.ya-field--wide{min-width:12rem}.ya-field-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.ya-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:40px;width:100%;padding:.4rem 2.1rem .4rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%235c6b66' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right .7rem center;color:var(--text);font:inherit;font-size:.92rem;cursor:pointer}.ya-select:hover{border-color:#b9cdc3}.ya-select:focus-visible{outline:3px solid var(--csv-tb-focus);outline-offset:2px;border-color:var(--brand)}.ya-export{margin-left:auto}.ya-export-menu{position:absolute;right:0;top:calc(100% + .4rem);z-index:5;display:grid;min-width:11rem;padding:.35rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 12px 28px #1f2a2e24}.ya-export-item{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:40px;padding:.45rem .75rem;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer}.ya-export-item:hover{background:var(--brand-soft);color:var(--csv-tb-brand-dark)}.ya-export-item:focus-visible{outline:3px solid var(--csv-tb-focus);outline-offset:-1px}.ya-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem;margin-top:1rem}.ya-kpi{min-width:0;padding:.9rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ya-kpi--primary{border-color:#bfe3d4;background:var(--active)}.ya-kpi-label{margin:0;color:var(--text-muted);font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.ya-kpi-value{margin:.3rem 0 0;color:var(--text);font-size:1.5rem;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ya-kpi--primary .ya-kpi-value{color:var(--csv-tb-brand-dark)}.ya-kpi-unit{color:var(--text-muted);font-size:.95rem;font-weight:600}.ya-kpi-context{margin:.3rem 0 0;color:var(--text-muted);font-size:.82rem}.ya-kpi-warning{margin:.45rem 0 0;padding:.35rem .5rem;border:1px solid var(--csv-tb-warning-border);border-radius:8px;background:var(--csv-tb-warning-soft);color:var(--csv-tb-warning);font-size:.8rem;line-height:1.35}.ya-kpi-warning-label{font-weight:700}.ya-page .ya-table-scroll{margin-top:.9rem;overflow-x:auto;border:1px solid var(--border);border-radius:12px;-webkit-overflow-scrolling:touch}.ya-page .ya-table{border-collapse:separate;border-spacing:0}.ya-page .ya-table th,.ya-page .ya-table td{padding:.6rem .8rem;border-bottom:1px solid var(--border);white-space:nowrap}.ya-page .ya-table thead th{background:var(--surface-soft);color:#2b3934;font-size:.8rem;font-weight:700;letter-spacing:.02em;border-bottom:1px solid #d5dfdb}.ya-page .ya-table td,.ya-page .ya-table thead th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.ya-page .ya-table tbody th{color:var(--text);font-weight:600;text-align:left}.ya-page .ya-table tbody tr>*{background:var(--surface)}.ya-page .ya-table tbody tr:nth-child(2n)>*{background:#f8fbfa}.ya-page .ya-table tbody tr:hover>*{background:#edf6f2}.ya-page .ya-table tbody tr:last-child>*{border-bottom:none}.ya-page .ya-table tfoot>tr>*{background:var(--active);color:var(--csv-tb-brand-dark);font-weight:700;border-top:2px solid #9fcdbd;border-bottom:none}.ya-page .ya-table tfoot th{text-align:left}.ya-page .ya-table th:first-child{position:sticky;left:0;z-index:1;box-shadow:inset -1px 0 0 var(--border)}.ya-color-swatch{display:inline-block;width:.7rem;height:.7rem;margin-right:.5rem;border-radius:50%;border:1px solid rgba(31,42,46,.2);vertical-align:-.05rem}.ya-color-swatch--red{background:#d32f2f}.ya-color-swatch--orange{background:#ef6c00}.ya-color-swatch--yellow{background:#f9c80e}.ya-color-swatch--green{background:#2e7d32}.ya-chart-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 1rem}.ya-page .ya-chart{height:320px;margin-top:.9rem;overflow:visible}.ya-page .ya-chart>div{min-width:0}.ya-chart-card .ya-card-head{flex-wrap:nowrap}.ya-chart-card .ya-card-head>div{min-width:0}.ya-chart .recharts-wrapper svg:focus:not(:focus-visible){outline:none}.ya-chart .recharts-wrapper svg:focus-visible{outline:3px solid rgba(15,118,96,.4);outline-offset:2px;border-radius:6px}.ya-chart-placeholder{display:flex;flex-direction:column;justify-content:center;min-height:220px;margin-top:.9rem}.ya-skeleton{display:block;border-radius:8px;background:linear-gradient(90deg,#eef3f1,#f7faf9,#eef3f1);background-size:200% 100%;animation:ya-shimmer 1.4s ease-in-out infinite}.ya-chart-placeholder.ya-skeleton{min-height:280px;border-radius:12px}.ya-kpi--skeleton{display:grid;gap:.6rem}.ya-skeleton--label{width:55%;height:.75rem}.ya-skeleton--value{width:75%;height:1.6rem}.ya-table-skeleton{display:grid;gap:.5rem;margin-top:.9rem}.ya-skeleton--row{height:2.2rem}@keyframes ya-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (min-width: 1280px){.ya-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.ya-card{padding:.9rem}.ya-filters-row,.ya-filter-fields{flex-direction:column;align-items:stretch}.ya-field,.ya-field--wide{min-width:0}.ya-select{min-height:44px}.ya-export{margin-left:0}.ya-page .ya-export-button{width:100%}.ya-export-menu{left:0;right:0}.ya-export-item{min-height:44px}.ya-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.ya-kpi--primary{grid-column:1 / -1}.ya-kpi{padding:.75rem .8rem}.ya-kpi-value{font-size:1.25rem}.ya-page .ya-chart{height:300px}.ya-page .ya-table-scroll:after{content:"Swipe sideways to see every column.";position:sticky;left:0;display:block;padding:.45rem .7rem;border-top:1px solid var(--border);background:var(--surface-soft);color:var(--text-muted);font-size:.78rem}.ya-page .ya-table th,.ya-page .ya-table td{padding:.5rem .6rem;font-size:.84rem}.ya-alert .csv-tb-btn{width:100%}}@media (prefers-reduced-motion: reduce){.ya-skeleton{animation:none}}.chart-expand-button{--csv-tb-focus: rgba(15, 118, 96, .4);width:40px;min-height:40px;padding:0;flex:none}.chart-fullscreen{--csv-tb-brand-dark: #0a5e4c;--csv-tb-focus: rgba(15, 118, 96, .4);position:fixed;top:0;left:0;right:0;height:100vh;height:100dvh;z-index:60;display:flex;flex-direction:column;gap:.75rem;box-sizing:border-box;padding:calc(1rem + env(safe-area-inset-top,0px)) calc(1.25rem + env(safe-area-inset-right,0px)) calc(1rem + env(safe-area-inset-bottom,0px)) calc(1.25rem + env(safe-area-inset-left,0px));background:var(--surface);overscroll-behavior:contain}.chart-fullscreen:focus{outline:none}.chart-fullscreen-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex:none}.chart-fullscreen-head>div{min-width:0}.chart-fullscreen-title{margin:0;font-size:1.08rem;color:var(--text)}.chart-fullscreen-description{margin:.3rem 0 0;max-width:72ch;color:var(--text-muted);font-size:.9rem}.chart-fullscreen-close{flex:none}.chart-fullscreen-body{flex:1 1 auto;min-height:0;min-width:0}.chart-fullscreen .recharts-wrapper svg:focus:not(:focus-visible),.dashboard-chart-wrapper .recharts-wrapper svg:focus:not(:focus-visible){outline:none}.chart-fullscreen .recharts-wrapper svg:focus-visible,.dashboard-chart-wrapper .recharts-wrapper svg:focus-visible{outline:3px solid rgba(15,118,96,.4);outline-offset:2px;border-radius:6px}@media (max-width: 640px){.chart-expand-button{width:44px;min-height:44px}.chart-fullscreen{padding:calc(.75rem + env(safe-area-inset-top,0px)) calc(.75rem + env(safe-area-inset-right,0px)) calc(.75rem + env(safe-area-inset-bottom,0px)) calc(.75rem + env(safe-area-inset-left,0px))}}
