.greenhouse-map{position:relative;min-width:0;height:100%;display:flex;flex-direction:column}.map-canvas-wrap{position:relative;flex:1;min-height:360px}.map-canvas{position:absolute;top:0;right:0;bottom:0;left:0;background:#111f19}.map-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:24px;background:#13251c;color:#b9cfc1}.map-fallback p{overflow-wrap:anywhere;margin:0;line-height:1.7}.map-fallback button{width:auto!important;gap:8px}.map-no-points{position:absolute;top:12px;left:12px;right:12px;margin:0;padding:10px 14px;background:#15261fe8;color:#c5d5cc;pointer-events:none;font-size:13px}.map-search{display:flex;gap:10px;align-items:flex-end;padding-bottom:12px}.map-search-label{flex:1;margin:0!important;min-width:0}.map-search>button{height:42px;width:44px;flex-shrink:0;padding:8px}.map-search-message{margin:0 0 10px;color:#a23138;font-size:14px}.map-search-results{list-style:none;margin:0 0 12px;padding:0;max-height:150px;overflow:auto;border:1px solid var(--line)}.map-search-results button{width:100%;text-align:left;display:block;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:10px 12px}.map-search-results small{display:block;color:var(--muted);margin-top:4px}.map-picker .map-fallback{background:#f4f7f6;color:#3a5449}.map-picker .map-canvas-wrap{min-height:320px}.greenhouse-map-pin{width:22px!important;height:22px!important;min-height:0!important;padding:0!important;border-radius:50%!important;border:3px solid #fff!important;background:#228b56!important;cursor:pointer}.greenhouse-map-pin.offline{background:#77817d!important}.greenhouse-map-pin.alarm{background:#d58026!important}.greenhouse-map-pin:focus-visible{outline:3px solid #f6c36f;outline-offset:4px}.greenhouse-map-tooltip{color:#203832;font-family:inherit;min-width:140px;line-height:1.9;padding:4px;overflow-wrap:anywhere}.greenhouse-map-tooltip>div:first-child{font-weight:600}.map-canvas .amap-logo{display:block!important}.map-canvas .amap-copyright{color:#777}@media(max-width:700px){.map-canvas-wrap{min-height:380px}.map-picker .map-canvas-wrap{min-height:280px}}.wechat-binding[data-v-0cb0eb55]{max-width:440px;padding:16px;background:#f4f7f6;border:1px solid var(--line);border-radius:6px;margin:12px 0 22px;overflow-wrap:anywhere}.wechat-binding img[data-v-0cb0eb55]{display:block;width:200px;height:200px;max-width:100%;object-fit:contain;background:#fff;margin:16px 0}.wechat-binding p[data-v-0cb0eb55]{line-height:1.65}.binding-actions[data-v-0cb0eb55]{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.wechat-binding button[data-v-0cb0eb55]{max-width:100%;white-space:normal;justify-content:center;min-height:40px}.wechat-binding>button[data-v-0cb0eb55]{margin-top:8px}.notification-preferences[data-v-32258da6]{padding:22px 0;border-top:1px solid var(--line);margin:20px 0}h3[data-v-32258da6]{margin-bottom:14px}form>label[data-v-32258da6]:not(.switch-label){max-width:360px}.switch-label[data-v-32258da6]{margin:14px 0}.farmer-preferences[data-v-32258da6]{padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;margin-top:28px}.farmer-preferences h3[data-v-32258da6]{font-size:19px;margin-top:0}.farmer-preferences .subscription-options[data-v-32258da6]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:20px;gap:0 20px}.farmer-preferences .switch-label[data-v-32258da6]{min-height:36px;min-width:0;flex-wrap:wrap}.pending-subscription[data-v-32258da6]{color:var(--muted)}.pending-subscription small[data-v-32258da6],.binding-placeholder small[data-v-32258da6]{font-size:12px;color:var(--muted)}.binding-placeholder[data-v-32258da6]{display:flex;justify-content:space-between;gap:12px;max-width:360px;padding:16px;background:#f4f7f6;border:1px dashed var(--line);border-radius:6px;margin:12px 0 22px}.farmer-preferences form>button[data-v-32258da6]{margin-top:8px}@media(max-width:600px){.farmer-preferences[data-v-32258da6]{padding:18px 16px}.farmer-preferences .subscription-options[data-v-32258da6]{grid-template-columns:1fr}.farmer-preferences form>button[data-v-32258da6]{width:100%;justify-content:center}}.outside-weather[data-v-047a498b]{padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px;margin:0 0 24px}.section-heading[data-v-047a498b]{flex-wrap:wrap;gap:12px}h2[data-v-047a498b]{display:flex;align-items:center;gap:8px;margin:0;font-size:18px;color:#203832}h2 svg[data-v-047a498b]{color:#4b8667}.weather-readings[data-v-047a498b]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin:24px 0}.weather-readings>div[data-v-047a498b]{min-width:0}.weather-readings span[data-v-047a498b]{display:block;color:var(--muted);font-size:13px;margin-bottom:8px}.weather-readings strong[data-v-047a498b]{font-size:22px;line-height:1.5;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.weather-readings small[data-v-047a498b]{font-size:12px;font-weight:400;color:var(--muted)}.weather-caption[data-v-047a498b]{font-size:12px;line-height:1.6}.weather-warnings[data-v-047a498b]{list-style:none;margin:18px 0 0;padding:0}.weather-warnings li[data-v-047a498b]{padding:16px 0;border-top:1px solid var(--line)}.weather-warnings strong[data-v-047a498b]{display:flex;align-items:center;gap:8px;color:#9b421c}.weather-warnings p[data-v-047a498b]{font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.weather-warnings small[data-v-047a498b]{color:var(--muted)}@media(max-width:900px){.weather-readings[data-v-047a498b]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.outside-weather[data-v-047a498b]{padding:18px 16px}.weather-readings[data-v-047a498b]{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.weather-readings strong[data-v-047a498b]{font-size:20px}}.harvest-receipts[data-v-70370461]{margin-top:24px;border-top:1px solid #dce5e0;padding-top:16px;min-width:0}.harvest-receipts header[data-v-70370461]{display:flex;justify-content:space-between;align-items:center;gap:12px}.harvest-receipts h4[data-v-70370461]{font-size:16px;margin:0}.harvest-receipts p[data-v-70370461]{font-size:14px;color:#657b72;line-height:1.6}.harvest-receipts label[data-v-70370461]{display:grid;gap:8px;font-size:14px;max-width:420px}.harvest-receipts select[data-v-70370461]{width:100%;min-width:0;padding:9px;border:1px solid #dce5e0;border-radius:6px;font:inherit;background:#fff;color:#203832}.harvest-receipts button[data-v-70370461]{display:inline-flex;align-items:center;min-height:36px;border:1px solid #dce5e0;border-radius:6px;padding:8px 12px;background:#f4f7f6;color:#167253;cursor:pointer}.harvest-receipts button[data-v-70370461]:hover{background:#eaf2ed}.harvest-receipts button[data-v-70370461]:disabled{opacity:.6}.harvest-receipts .receipt-error[data-v-70370461]{color:#b52d35}.receipt-table[data-v-70370461]{overflow-x:auto}.receipt-table table[data-v-70370461]{width:100%;border-collapse:collapse;font-size:14px}.receipt-table th[data-v-70370461],.receipt-table td[data-v-70370461]{text-align:left;white-space:nowrap;padding:10px;border-bottom:1px solid #dce5e0}.receipt-total strong[data-v-70370461]{color:#167253}.harvest-dossier[data-v-010ad7da]{margin-top:20px;padding-top:20px;border-top:1px solid #dce5e0;min-width:0}.harvest-dossier header[data-v-010ad7da]{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.harvest-dossier h3[data-v-010ad7da]{margin:0;font-size:17px}.harvest-dossier p[data-v-010ad7da]{overflow-wrap:anywhere;font-size:14px}.harvest-dossier fieldset[data-v-010ad7da]{border:0;border-top:1px solid #dce5e0;padding:16px 0;margin:20px 0;min-width:0}.harvest-dossier legend[data-v-010ad7da]{font-weight:600;padding-right:12px}.dossier-record[data-v-010ad7da]{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end;margin:12px 0 20px}.dossier-record label[data-v-010ad7da]{display:grid;gap:6px;min-width:0;font-size:14px}.dossier-wide[data-v-010ad7da]{grid-column:1/-1}.harvest-dossier input[data-v-010ad7da]:not([type=checkbox]),.harvest-dossier select[data-v-010ad7da],.harvest-dossier textarea[data-v-010ad7da]{box-sizing:border-box;width:100%;min-width:0;border:1px solid #dce5e0;border-radius:6px;padding:9px;font:inherit;background:#fff;color:#203832}.dossier-check[data-v-010ad7da]{display:flex;align-items:center;gap:8px}.harvest-dossier button[data-v-010ad7da]{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid #dce5e0;border-radius:6px;padding:7px 12px;background:#f4f7f6;color:#167253;cursor:pointer}.harvest-dossier button[data-v-010ad7da]:hover{background:#eaf2ed}.harvest-dossier button[data-v-010ad7da]:disabled{opacity:.6;cursor:wait}.harvest-dossier .muted[data-v-010ad7da]{color:#657b72}.harvest-dossier .error[data-v-010ad7da]{color:#b52d35}.dossier-table[data-v-010ad7da]{overflow-x:auto}.dossier-table table[data-v-010ad7da]{width:100%;border-collapse:collapse;font-size:14px}.dossier-table th[data-v-010ad7da],.dossier-table td[data-v-010ad7da]{white-space:nowrap;text-align:left;padding:10px;border-bottom:1px solid #dce5e0}.dossier-summary[data-v-010ad7da]{margin-top:20px}@media(max-width:600px){.dossier-record[data-v-010ad7da]{grid-template-columns:1fr}}.harvest-dossier .dossier-check[data-v-010ad7da]{flex-direction:row;font-weight:400;align-items:center;justify-content:flex-start}.harvest-dossier .dossier-check input[data-v-010ad7da]{width:18px;height:18px;min-height:18px;padding:0;flex:0 0 18px;accent-color:#167253}.harvest-panel[data-v-7e151af7]{margin:20px 0;padding:20px;border:1px solid #dce5e0;border-radius:8px;background:#fff;color:#203832}.harvest-panel header[data-v-7e151af7],.harvest-actions[data-v-7e151af7]{display:flex;align-items:center;justify-content:space-between;gap:10px}.harvest-panel h2[data-v-7e151af7]{font-size:18px;margin:0}.harvest-panel p[data-v-7e151af7]{font-size:14px;color:#657b72;overflow-wrap:anywhere}.harvest-panel button[data-v-7e151af7]{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:7px 12px;border:1px solid #dce5e0;border-radius:6px;background:#f4f7f6;color:#167253;cursor:pointer}.harvest-panel button[data-v-7e151af7]:hover{background:#eaf2ed}.harvest-panel button[data-v-7e151af7]:disabled{opacity:.6;cursor:wait}.harvest-form[data-v-7e151af7]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0;padding:16px 0;border-top:1px solid #dce5e0}.harvest-form label[data-v-7e151af7]{display:grid;gap:8px;min-width:0;font-size:14px}.harvest-form input[data-v-7e151af7]{width:100%;min-width:0;box-sizing:border-box;padding:10px;border:1px solid #dce5e0;border-radius:6px;font:inherit}.harvest-note[data-v-7e151af7]{grid-column:1/-1}.harvest-form .harvest-actions[data-v-7e151af7]{justify-content:flex-start}.harvest-table[data-v-7e151af7]{overflow-x:auto}.harvest-table table[data-v-7e151af7]{width:100%;border-collapse:collapse;font-size:14px}.harvest-table th[data-v-7e151af7],.harvest-table td[data-v-7e151af7]{text-align:left;padding:12px 8px;border-bottom:1px solid #eef2ef;white-space:nowrap}.harvest-table td[data-v-7e151af7]:last-child{white-space:normal;min-width:100px;overflow-wrap:anywhere}.harvest-error[data-v-7e151af7]{color:#b52d35!important}@media(max-width:600px){.harvest-panel[data-v-7e151af7]{padding:14px}.harvest-panel header[data-v-7e151af7]{align-items:flex-start;flex-wrap:wrap}.harvest-form[data-v-7e151af7]{grid-template-columns:1fr}.harvest-actions[data-v-7e151af7]{flex-wrap:wrap}}.farming-panel[data-v-5255837b]{margin:20px 0;padding:20px;border:1px solid #dce5e0;border-radius:8px;background:#fff;color:#203832;min-width:0}.farming-panel header[data-v-5255837b]{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.farming-panel h2[data-v-5255837b]{font-size:18px;margin:0}.farming-panel button[data-v-5255837b]{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:7px 12px;border:1px solid #dce5e0;border-radius:6px;background:#f4f7f6;color:#167253;cursor:pointer}.farming-panel button[data-v-5255837b]:disabled{opacity:.6}.farming-panel button[data-v-5255837b]:hover{background:#eaf2ed}.farming-panel fieldset[data-v-5255837b]{border:0;padding:16px 0;display:grid;gap:12px;min-width:0}.farming-panel label[data-v-5255837b]{display:grid;gap:6px;font-size:14px}.farming-panel input[data-v-5255837b],.farming-panel select[data-v-5255837b],.farming-panel textarea[data-v-5255837b]{box-sizing:border-box;width:100%;min-width:0;padding:9px;font:inherit;border:1px solid #dce5e0;border-radius:6px;background:#fff;color:#203832}.farming-table[data-v-5255837b]{overflow-x:auto}.farming-panel table[data-v-5255837b]{width:100%;border-collapse:collapse;font-size:14px}.farming-panel th[data-v-5255837b],.farming-panel td[data-v-5255837b]{padding:10px;text-align:left;border-bottom:1px solid #dce5e0;min-width:70px;overflow-wrap:anywhere}.farming-panel p[data-v-5255837b]{font-size:14px;color:#657b72}.farming-panel [role=alert][data-v-5255837b]{color:#b52d35}@media(max-width:600px){.farming-panel[data-v-5255837b]{padding:14px}}.history-section>.section-heading[data-v-ad518126]{flex-wrap:wrap;gap:12px}.history-section .actions[data-v-ad518126]{flex-wrap:wrap}.cleanup-button[data-v-ad518126]{color:#a3343e;border-color:#e7c4c7;background:#fff4f4}.cleanup-button[data-v-ad518126]:hover:not(:disabled){background:#fce6e8}.history-section[data-v-ad518126]{margin:24px 0;min-width:0}.history-filters[data-v-ad518126]{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:16px 0}.history-filters label[data-v-ad518126]{min-width:0;margin:0}.history-table[data-v-ad518126]{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:6px;background:#fff}.history-table table[data-v-ad518126]{width:100%;white-space:nowrap}.history-table th[data-v-ad518126],.history-table td[data-v-ad518126]{padding:12px;text-align:left}.history-pagination[data-v-ad518126]{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px;flex-wrap:wrap}.history-pagination span[data-v-ad518126]{margin-right:auto;color:var(--muted);font-size:13px}@media(max-width:600px){.history-filters label[data-v-ad518126]{width:100%}.history-filters input[data-v-ad518126]{width:100%;box-sizing:border-box}}.screen-chart[data-v-7355df8f]{height:290px;position:relative;min-width:0}.screen-chart>div[data-v-7355df8f]{height:100%;width:100%}.screen-chart>p[data-v-7355df8f]{position:absolute;inset:45% 12px auto;text-align:center;color:#a6b9af;pointer-events:none}.sensor-history[data-v-c8ea5ffe]{min-width:0;margin:24px 0}.sensor-history h2[data-v-c8ea5ffe]{font-size:18px}.sensor-history-controls[data-v-c8ea5ffe]{display:flex;flex-wrap:wrap;gap:12px}.sensor-history label[data-v-c8ea5ffe]{min-width:0;max-width:100%;flex:1 1 160px}.sensor-history select[data-v-c8ea5ffe]{width:100%;min-width:0}.dark[data-v-c8ea5ffe]{color:#d5e2d8}.dark select[data-v-c8ea5ffe]{background:#172c21;color:#d5e2d8;border-color:#3b5748}.farmer-task-nav[data-v-702f7bbe]{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:24px;background:var(--canvas,#f3f6f7)}.farmer-task-nav a[data-v-702f7bbe]{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;color:var(--muted);text-decoration:none;border-radius:6px;font-size:14px;min-height:44px}.farmer-task-nav a[data-v-702f7bbe]:hover{background:#eaf2ee}.farmer-task-nav a.active[data-v-702f7bbe]{background:#e4f1eb;color:#157052;font-weight:600}.farmer-task-nav a[data-v-702f7bbe]:focus-visible{outline:2px solid #157052;outline-offset:2px}.farmer-task-heading[data-v-702f7bbe]{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.farmer-task-heading h2[data-v-702f7bbe]{font-size:22px;margin:0}.farmer-task-heading label[data-v-702f7bbe]{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.farmer-task-heading select[data-v-702f7bbe]{width:auto;max-width:240px;margin:0}.greenhouses-page .farmer-task-heading label[data-v-702f7bbe]{display:flex;align-items:center;gap:10px;margin:0}.greenhouses-page .farmer-task-heading select[data-v-702f7bbe]{width:auto;margin:0}.greenhouses-page:has(.farmer-task-nav) .advice-section[data-v-702f7bbe]{margin-top:20px}@media(max-width:700px){.greenhouses-page[data-v-702f7bbe]:has(.farmer-task-nav){padding-bottom:calc(80px + env(safe-area-inset-bottom))}.farmer-task-nav[data-v-702f7bbe]{position:fixed;bottom:0;left:0;right:0;z-index:90;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);border-bottom:0;background:#fff}.farmer-task-nav a[data-v-702f7bbe]{flex-direction:column;gap:4px;padding:8px 2px;font-size:12px;min-height:54px}.farmer-task-heading label[data-v-702f7bbe]{width:100%}.farmer-task-heading select[data-v-702f7bbe]{flex:1;min-width:0;max-width:none}}.farmer-readings[data-v-702f7bbe]{font-variant-numeric:tabular-nums}.farmer-greenhouse-list[data-v-702f7bbe]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.farmer-greenhouse-card[data-v-702f7bbe]{min-width:0;padding:22px;border:1px solid var(--line);border-radius:8px;background:#f8fbf9}.farmer-greenhouse-card .item-heading[data-v-702f7bbe]{align-items:flex-start;gap:12px}.farmer-greenhouse-card h2[data-v-702f7bbe]{font-size:19px;margin:0;overflow-wrap:anywhere}.card-statuses[data-v-702f7bbe]{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.alert-status[data-v-702f7bbe]{color:#b3323e;background:#fce9eb}.crop-line[data-v-702f7bbe]{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;margin:12px 0 20px;overflow-wrap:anywhere}.crop-line svg[data-v-702f7bbe]{color:var(--primary);flex-shrink:0}.crop-line .muted[data-v-702f7bbe]{width:100%;font-size:12px}.farmer-readings[data-v-702f7bbe]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 14px}.farmer-readings>div[data-v-702f7bbe]{min-width:0}.farmer-readings>div>span[data-v-702f7bbe]{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px}.farmer-readings>div>div[data-v-702f7bbe]{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;margin-top:8px}.farmer-readings strong[data-v-702f7bbe]{font-size:24px;line-height:1.2;color:#216047;overflow-wrap:anywhere}.farmer-readings small[data-v-702f7bbe]{font-size:11px;color:var(--muted)}.farmer-readings .primary-reading[data-v-702f7bbe]{grid-column:auto;min-width:0}.farmer-readings .primary-reading strong[data-v-702f7bbe]{font-size:32px}.farmer-readings.is-offline strong[data-v-702f7bbe]{color:#77827c}.ai-preview[data-v-702f7bbe]{display:flex;align-items:center;gap:6px;font-size:12px;margin:22px 0 14px}.ai-preview svg[data-v-702f7bbe]{flex-shrink:0}.farmer-card-footer[data-v-702f7bbe]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;border-top:1px solid var(--line);padding-top:16px}.farmer-card-footer>span[data-v-702f7bbe]{font-size:12px}.farmer-card-footer button[data-v-702f7bbe]{margin-left:auto;font-size:13px;color:#216047;background:#edf5f0;border-color:#c6dacf}@media(max-width:900px){.farmer-greenhouse-list[data-v-702f7bbe]{grid-template-columns:1fr}}@media(max-width:480px){.farmer-greenhouse-card[data-v-702f7bbe]{padding:18px 16px}.farmer-greenhouse-card .item-heading[data-v-702f7bbe]{flex-wrap:wrap}.card-statuses[data-v-702f7bbe]{justify-content:flex-start}.farmer-readings[data-v-702f7bbe]{gap:18px 10px}.farmer-readings .primary-reading[data-v-702f7bbe]{grid-column:span 1}.farmer-readings .primary-reading strong[data-v-702f7bbe]{font-size:30px}}.detail-theme[data-v-702f7bbe]{min-height:calc(100dvh - 180px);color-scheme:light}.detail-theme .page-heading[data-v-702f7bbe]{margin-bottom:18px}.detail-theme .back-button[data-v-702f7bbe]{margin:0}.detail-theme .detail-meta[data-v-702f7bbe]{gap:12px 20px;padding:20px 22px 0;background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0}.detail-meta h1[data-v-702f7bbe]{margin:0;font-size:24px}.gateway-sn[data-v-702f7bbe]{overflow-wrap:anywhere;min-width:0}.gateway-sn svg[data-v-702f7bbe]{flex-shrink:0}.detail-theme .status[data-v-702f7bbe]{border-radius:20px;padding:5px 12px}.detail-theme button[data-v-702f7bbe],.detail-theme .screen-button[data-v-702f7bbe]{transition:background .16s,border-color .16s}.detail-theme .edit-button[data-v-702f7bbe]{background:#eff6fc;color:#285d86;border-color:#c4d9ea}.detail-theme .edit-button[data-v-702f7bbe]:hover:not(:disabled){background:#e1eef9;border-color:#86b3d5}.detail-theme .delete-button[data-v-702f7bbe]{background:#fff4f4;color:#a3343e;border-color:#e7c4c7}.detail-theme .delete-button[data-v-702f7bbe]:hover:not(:disabled){background:#fce6e8;border-color:#cf939a}.detail-theme .screen-button[data-v-702f7bbe]{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 14px;border-radius:5px;text-decoration:none;background:#edf5f0;border:1px solid #bdd4c6;color:#216047;font-size:14px}.detail-theme .screen-button[data-v-702f7bbe]:hover{background:#e0eee6;border-color:#85b49b}.detail-theme .detail-actions[data-v-702f7bbe]{margin:0;padding:18px 22px 20px;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 8px 8px}.detail-theme .live-section[data-v-702f7bbe]{padding:26px 0 24px;border:0}.detail-theme .section-heading[data-v-702f7bbe]{flex-wrap:wrap;gap:10px}.collection-time[data-v-702f7bbe]{margin:0;font-size:13px}.detail-theme .sensor-grid[data-v-702f7bbe]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-auto-rows:1fr;gap:12px;border:0;background:none;margin-top:18px}.detail-theme .sensor[data-v-702f7bbe],.detail-theme .advice-section[data-v-702f7bbe]{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 3px 12px #20383206}.detail-theme .sensor[data-v-702f7bbe]{grid-column:auto;padding:18px 16px;min-width:0}.detail-theme .sensor>span[data-v-702f7bbe]{color:#52665b;font-size:14px}.detail-theme .sensor>span svg[data-v-702f7bbe]{color:#4b8667}.detail-theme .sensor>div[data-v-702f7bbe]{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:16px;min-height:48px}.detail-theme .sensor strong[data-v-702f7bbe]{font-size:34px;font-weight:700;line-height:1.2;color:#216047;overflow-wrap:anywhere}.detail-theme .sensor small[data-v-702f7bbe]{display:inline;font-size:12px;color:var(--muted)}.reading-hint[data-v-702f7bbe]{margin:10px 0 0;min-height:34px;font-size:12px;line-height:1.45;color:#69776f}.detail-theme .reading-muted strong[data-v-702f7bbe]{color:#6e7d74}.detail-theme .advice-section[data-v-702f7bbe]{padding:22px;margin:0 0 24px}.detail-theme .advice-section h2[data-v-702f7bbe]{color:#203832}.detail-theme .advice-section h2 svg[data-v-702f7bbe]{color:#4b8667}.detail-theme .advice-text[data-v-702f7bbe]{color:#2c4035}.detail-theme .disclaimer[data-v-702f7bbe]{color:#69776f;font-size:12px}@media(max-width:1000px){.detail-theme .sensor-grid[data-v-702f7bbe]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.detail-meta h1[data-v-702f7bbe]{width:100%;font-size:22px}.detail-theme .detail-meta[data-v-702f7bbe]{gap:10px 14px;padding:18px 16px 0}.detail-theme .detail-actions[data-v-702f7bbe]{padding:16px}.detail-theme .sensor-grid[data-v-702f7bbe]{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-theme .sensor[data-v-702f7bbe]{padding:16px 12px}.detail-theme .sensor strong[data-v-702f7bbe]{font-size:30px}.detail-theme .sensor>span[data-v-702f7bbe]{font-size:13px}.detail-theme .advice-section[data-v-702f7bbe]{padding:18px 16px}.detail-theme .advice-section .section-heading button[data-v-702f7bbe]{font-size:13px;padding:8px 10px}.detail-theme .collection-time[data-v-702f7bbe]{width:100%;font-size:12px}.detail-theme .detail-actions button[data-v-702f7bbe],.detail-theme .screen-button[data-v-702f7bbe]{font-size:13px;padding:8px 10px}}@media(prefers-reduced-motion:reduce){.detail-theme button[data-v-702f7bbe],.detail-theme .screen-button[data-v-702f7bbe]{transition:none}}.greenhouse-position[data-v-702f7bbe]{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.greenhouse-position h3[data-v-702f7bbe]{font-size:16px;margin:0}.greenhouse-position .actions[data-v-702f7bbe]{flex-wrap:wrap}.location-backdrop[data-v-702f7bbe]{z-index:1100}.location-dialog[data-v-702f7bbe]{width:min(860px,calc(100vw - 32px));max-width:860px;max-height:calc(100dvh - 32px);overflow:auto}.location-dialog .greenhouse-map[data-v-702f7bbe]{height:420px}.location-dialog .form-actions[data-v-702f7bbe]{position:sticky;bottom:0;background:#fff;padding-top:12px}.location-dialog .muted[data-v-702f7bbe]{overflow-wrap:anywhere}@media(max-width:700px){.location-dialog .greenhouse-map[data-v-702f7bbe]{height:380px}.location-dialog[data-v-702f7bbe]{padding:18px}}.sales-grants[data-v-9c4ca55c]{margin-top:24px;border-top:1px solid #dce5e0;padding-top:16px}.sales-grants ul[data-v-9c4ca55c]{list-style:none;padding:0}.sales-grants li[data-v-9c4ca55c]{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #dce5e0}.sales-grants small[data-v-9c4ca55c]{display:block}.sales-grants li div[data-v-9c4ca55c]{min-width:0;overflow-wrap:anywhere}.trace-scopes[data-v-9c4ca55c]{border:0;padding:12px 0 0;margin:0;min-width:0;display:flex;flex-wrap:wrap;gap:10px;font-size:14px}.trace-scopes legend[data-v-9c4ca55c]{font-size:13px;color:#657b72;padding-top:12px}.trace-scopes label[data-v-9c4ca55c]{display:inline-flex;align-items:center;gap:5px}.trace-scopes input[data-v-9c4ca55c]{width:auto;margin:0}.trace-scopes button[data-v-9c4ca55c]{font-size:13px}@media(max-width:600px){.sales-grants li[data-v-9c4ca55c]{align-items:flex-start;flex-wrap:wrap}}.binding-phone[data-v-d8170bab]{margin-top:8px}.sync-summary[data-v-d8170bab]{margin-bottom:20px}.sync-summary p[data-v-d8170bab]{max-width:72ch;line-height:1.7}.usr-settings[data-v-68a4240e]{max-width:600px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}dl[data-v-68a4240e]{margin:20px 0}dl>div[data-v-68a4240e]{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}dt[data-v-68a4240e],dd[data-v-68a4240e]{margin:0;overflow-wrap:anywhere}.usr-result[data-v-68a4240e]{padding:12px 14px;background:#e3f2e9;color:#12603e;border:1px solid #b5d9c5;border-radius:5px}fieldset[data-v-68a4240e]{border:0;margin:0;padding:0;min-width:0}fieldset>label[data-v-68a4240e]{margin:20px 0 8px}.clear-option[data-v-68a4240e]{flex-direction:row;align-items:center;font-weight:400;gap:10px}.clear-option input[data-v-68a4240e]{width:18px;min-height:18px;height:18px;flex-shrink:0;accent-color:var(--green)}.map-settings-section[data-v-2b532932]{border-top:1px solid var(--line);margin-top:36px;padding-top:24px}.map-settings-section h2[data-v-2b532932]{display:flex;align-items:center;gap:8px}.map-settings-section form[data-v-2b532932]{max-width:600px}.map-settings-section label[data-v-2b532932]{margin-top:20px}.map-settings-section .map-clear[data-v-2b532932]{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:400}.map-clear input[data-v-2b532932]{width:18px;height:18px;min-height:18px;flex-shrink:0}.map-settings-section button[data-v-2b532932]{margin-top:16px}.settings-result[data-v-2b532932]{padding:12px 14px;background:#e3f2e9;color:#12603e;border:1px solid #b5d9c5;border-radius:5px}.ai-settings-form[data-v-979a6608]{max-width:600px}.ai-settings-form fieldset[data-v-979a6608]{border:0;margin:0;padding:0;min-width:0}.ai-settings-form label[data-v-979a6608]{margin:20px 0 8px}.ai-settings-form .settings-checkbox[data-v-979a6608]{flex-direction:row;align-items:center;font-weight:400;gap:10px}.settings-checkbox input[data-v-979a6608]{width:18px;min-height:18px;height:18px;flex-shrink:0;accent-color:var(--green)}.settings-actions[data-v-979a6608]{display:flex;flex-wrap:wrap;gap:12px;padding-top:20px;border-top:1px solid var(--line);margin-top:24px}.settings-result[data-v-979a6608]{padding:12px 14px;background:#e3f2e9;color:#12603e;border:1px solid #b5d9c5;border-radius:5px}.poll-settings[data-v-884237fc]{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.poll-settings h2[data-v-884237fc]{font-size:18px;margin:0 0 12px}.poll-controls[data-v-884237fc]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.poll-controls label[data-v-884237fc]{margin:0;width:min(240px,100%)}.sensor-model-dialog[data-v-884237fc]{width:min(720px,calc(100vw - 32px))}.model-settings[data-v-884237fc]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.model-mapping[data-v-884237fc]{border:1px solid #dbe3df;border-radius:4px;margin:12px 0;padding:12px;min-width:0}.model-mapping legend[data-v-884237fc]{padding:0 6px;font-weight:600}.signed-field[data-v-884237fc]{display:flex;flex-direction:row;align-items:center;gap:8px}.signed-field input[data-v-884237fc]{width:18px;min-height:18px}@media(max-width:480px){.model-settings[data-v-884237fc]{grid-template-columns:minmax(0,1fr)}}.page-heading[data-v-b282ac54]{flex-wrap:wrap;gap:12px}.actions a[data-v-b282ac54]{display:inline-flex;align-items:center;gap:6px}.channel-readiness[data-v-b282ac54]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:18px}.channel-readiness .status[data-v-b282ac54]{margin-left:12px}.channel-readiness p[data-v-b282ac54]{overflow-wrap:anywhere}.effective-policy[data-v-b282ac54]{min-width:200px;white-space:normal}@media(max-width:700px){.channel-readiness[data-v-b282ac54]{grid-template-columns:1fr}}.policy-table[data-v-b282ac54]{max-width:100%;overflow-x:auto;margin-top:18px}.policy-table table[data-v-b282ac54]{width:100%;min-width:580px;border-collapse:collapse}.policy-table th[data-v-b282ac54],.policy-table td[data-v-b282ac54]{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left}.policy-table input[data-v-b282ac54]{width:18px;height:18px;vertical-align:middle}fieldset[data-v-b282ac54]{border:0;padding:0;margin:0;min-width:0}section[data-v-b282ac54]{padding:24px 0;border-bottom:1px solid var(--line)}h2[data-v-b282ac54]{margin-bottom:16px}.fields[data-v-b282ac54]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.cooldown[data-v-b282ac54]{max-width:340px;margin-top:18px}.switch-label[data-v-b282ac54]{margin:12px 0}.notification-settings[data-v-b282ac54]{max-width:1000px}@media(max-width:700px){.fields[data-v-b282ac54]{grid-template-columns:1fr}.page-heading h1[data-v-b282ac54]{font-size:22px}}.record-filters[data-v-7b191d36]{display:flex;flex-wrap:wrap;gap:16px;margin:24px 0}.record-filters label[data-v-7b191d36]{width:240px;max-width:100%}.actions a[data-v-7b191d36]{display:inline-flex;align-items:center;gap:6px}.notification-records[data-v-7b191d36]{min-width:0}.delivery-detail[data-v-7b191d36]{min-width:240px;max-width:340px;white-space:normal;overflow-wrap:anywhere}.delivery-detail p[data-v-7b191d36]{margin:0 0 8px}.delivery-detail summary[data-v-7b191d36]{cursor:pointer;color:var(--green,#167253)}.delivery-detail ul[data-v-7b191d36]{padding-left:18px;margin:12px 0}.delivery-detail li[data-v-7b191d36]{margin:12px 0}.delivery-detail span[data-v-7b191d36]{display:block;margin-top:4px}.alarm-detail[data-v-7b191d36]{white-space:normal;max-width:240px;overflow-wrap:anywhere}.record-note[data-v-7b191d36]{margin-top:20px}.notification-records .page-heading[data-v-7b191d36]{flex-wrap:wrap;gap:12px}@media(max-width:700px){.record-filters label[data-v-7b191d36]{width:100%}.record-filters[data-v-7b191d36]{gap:12px}}.weather-settings[data-v-fffb45a0]{max-width:1000px}.page-heading[data-v-fffb45a0],.section-heading[data-v-fffb45a0]{flex-wrap:wrap;gap:12px}fieldset[data-v-fffb45a0]{border:0;padding:0;margin:0;min-width:0}section[data-v-fffb45a0]{padding:24px 0;border-bottom:1px solid var(--line)}h2[data-v-fffb45a0]{display:flex;align-items:center;gap:8px;margin:0;font-size:18px}.fields[data-v-fffb45a0]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.fields label[data-v-fffb45a0]{min-width:0}.fields small[data-v-fffb45a0]{font-size:12px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.switch-label[data-v-fffb45a0]{margin-top:20px}@media(max-width:700px){.fields[data-v-fffb45a0]{grid-template-columns:1fr}.page-heading h1[data-v-fffb45a0]{font-size:22px}}.archive-filters[data-v-8c3a1458]{display:flex;gap:12px;align-items:flex-end;margin-bottom:20px;flex-wrap:wrap}.archive-filters label[data-v-8c3a1458]{margin:0}.archive-search[data-v-8c3a1458]{flex:1;min-width:180px}.archive-owner[data-v-8c3a1458]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.archive-dialog[data-v-8c3a1458]{width:min(980px,100%);min-width:0}.archive-dialog h3[data-v-8c3a1458]{margin:20px 0 10px}.archive-description[data-v-8c3a1458]{line-height:1.8;overflow-wrap:anywhere}.archive-dialog .table-wrap[data-v-8c3a1458]{max-width:100%;overflow-x:auto}.archive-dialog>p[data-v-8c3a1458]{overflow-wrap:anywhere}@media(max-width:600px){.archive-filters>label[data-v-8c3a1458]{width:100%}.archive-search[data-v-8c3a1458]{min-width:0}.archive-dialog[data-v-8c3a1458]{padding:16px}.archive-owner[data-v-8c3a1458]{font-size:13px}}:root{font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#203832;background:#f4f7f6;font-synthesis:none;text-rendering:optimizeLegibility;font-size:16px;line-height:1.55;--green:#167253;--line:#dce5e0;--muted:#586d63;--blue:#2167ad;--amber:#985318;--red:#b52d35}*{box-sizing:border-box;letter-spacing:0}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 14px;border:1px solid #bdccc3;border-radius:5px;background:#fff;cursor:pointer;line-height:1.3}button:hover:not(:disabled){background:#edf5f0;border-color:var(--green)}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:var(--green);border-color:var(--green);color:#fff}button.primary:hover:not(:disabled){background:#105b42}input,select,textarea{width:100%;min-width:0;min-height:44px;padding:9px 11px;background:#fff;border:1px solid #aebfb4;border-radius:5px;caret-color:var(--green)}input:disabled{background:#f0f3f1}label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}form>label{margin:16px 0}textarea{resize:vertical}a{color:var(--green);text-underline-offset:3px}button svg{flex-shrink:0;width:19px;height:19px}:focus-visible{outline:3px solid #2167ad;outline-offset:3px}::selection{background:#c6e7d5;color:#173e2b}*{scrollbar-color:#a5bbae #f1f5f2;scrollbar-width:thin}h1,h2,p{overflow-wrap:anywhere}h1{font-size:24px;line-height:1.35;margin:0 0 8px;font-weight:700}h2{font-size:18px;line-height:1.4;margin:0;font-weight:650}p{margin:8px 0 14px}.muted{color:var(--muted);font-size:14px}.error{color:#8a1e26;background:#fff0f0;border:1px solid #e9b7bb;padding:12px 14px;border-radius:5px;white-space:pre-line}.notice{color:#704015;background:#fff7e8;border:1px solid #e9d5ab;padding:12px 14px;border-radius:5px;font-size:14px}.strong{font-weight:650}.icon-button{width:40px;height:40px;min-width:40px;padding:9px;background:transparent;border-color:transparent}.text-button{display:inline;min-height:32px;background:none;border:none;color:var(--green);padding:4px 0;text-align:left}.back-button{padding:4px 0;min-height:32px;background:none;border:none;color:var(--muted);margin-bottom:8px}.topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 28px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--green);white-space:nowrap}.brand strong{font-size:22px}.brand>span{font-size:14px;color:var(--muted);border-left:1px solid var(--line);padding-left:12px}.account{display:flex;align-items:center;gap:10px;font-size:14px;min-width:0}.account>span{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace{display:flex;min-height:calc(100dvh - 68px)}.sidebar{width:204px;flex-shrink:0;background:#fff;border-right:1px solid var(--line);padding:24px 14px}.sidebar a{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px 14px;border-radius:5px;color:#43594d;text-decoration:none;margin-bottom:6px;font-size:15px}.sidebar a:hover{background:#f2f7f4}.sidebar a.active{background:#e3f1e9;color:#106144;font-weight:650}.workspace>main{flex:1;min-width:0;max-width:1500px;padding:28px 32px 60px}.page-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-heading{margin-bottom:24px;align-items:flex-start}.page-heading p{margin:0}.actions,.detail-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search-bar{display:flex;align-items:end;gap:10px;margin-bottom:20px}.search-label{width:300px}.search-bar>label{margin:0}.search-bar>button{height:44px}.table-wrap{overflow-x:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left;white-space:nowrap}th{font-weight:600;background:#edf3ef;color:#40574a;padding:12px 16px}td{padding:14px 16px;border-top:1px solid #e5ece7;vertical-align:middle;font-variant-numeric:tabular-nums}td small{display:block;color:var(--muted);font-size:12px;margin-top:3px}tr:hover td{background:#fafcfb}td.wrap-cell{white-space:normal;min-width:220px;max-width:420px;overflow-wrap:anywhere}.advice-preview{line-height:1.7}.status{display:inline-flex;align-items:center;padding:3px 8px;min-height:26px;border-radius:4px;font-size:13px;white-space:nowrap}.good{background:#e3f2e9;color:#12603e}.neutral{background:#eaf0ec;color:#53675c}.warn{background:#fff1da;color:#805015}.bad{background:#fde8e9;color:#92242d}.warning-text{color:var(--red);font-weight:600}.empty{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;color:var(--muted);padding:32px 16px}.empty h2{color:#203832}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;font-size:14px}.detail-meta{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;color:var(--muted);font-size:14px}.detail-meta>span{display:flex;align-items:center;gap:6px}.detail-actions{margin:20px 0}.detail-actions button{font-size:14px}.live-section,.history-section,.advice-section{padding:28px 0;border-bottom:1px solid var(--line)}.sensor-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:22px;gap:0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sensor{grid-column:span 2;padding:20px 24px;border-top:1px solid var(--line)}.sensor.temperature,.sensor.humidity{grid-column:span 3;border-top:0}.sensor>span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:14px}.sensor>div{display:flex;align-items:baseline;gap:8px;margin-top:8px}.sensor strong{font-size:28px;font-weight:650;font-variant-numeric:tabular-nums}.sensor small{font-size:13px;color:var(--muted)}.sensor.temperature>span{color:var(--amber)}.sensor.humidity>span{color:var(--blue)}.sync-line{display:flex;align-items:center;gap:8px;padding:15px 0;font-size:14px;color:var(--muted);border-bottom:1px solid var(--line)}.sync-line.good{background:none;color:#12603e}.sync-line svg{flex-shrink:0}.chart-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.chart-controls label{flex-direction:row;align-items:center;gap:10px;white-space:nowrap}.chart-controls select{min-width:136px;font-weight:400}.segmented{display:flex;align-items:center;border:1px solid #aebfb4;border-radius:5px;overflow:hidden}.segmented button{border:0;border-radius:0;min-height:36px;padding:7px 16px;background:transparent}.segmented button[aria-pressed=true]{background:var(--green);color:#fff}.chart-area{height:280px;position:relative;margin-top:18px}.chart{width:100%;height:100%;min-width:0}.chart-state{position:absolute;top:40%;left:10%;width:80%;text-align:center;background:#f4f7f6;padding:10px;color:var(--muted);font-size:14px}.advice-section h2{display:flex;gap:8px;align-items:center}.advice-section>.primary{margin:12px 0;min-height:46px}.advice-text{white-space:pre-wrap;line-height:1.85;max-width:72ch;font-size:16px}.advice-result{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.advice-snapshot{display:flex;flex-wrap:wrap;gap:5px 14px;font-size:13px;color:var(--muted);margin:20px 0 10px}.disclaimer{margin:20px 0 0;font-size:13px}.farmer-shell .workspace>main{max-width:820px;width:100%;margin:0 auto;padding:24px 24px 50px}.farmer-shell .workspace{display:block}.greenhouse-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.greenhouse-item{display:block;min-width:0;padding:20px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:6px}.item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.item-heading h2{font-size:18px;min-width:0}.greenhouse-item>p{font-size:13px;margin:8px 0 20px}.mini-readings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-readings>div{display:flex;align-items:center;gap:8px;color:#203832}.mini-readings svg{color:var(--amber)}.mini-readings>div:nth-child(2) svg{color:var(--blue)}.mini-readings b{font-size:23px;font-weight:600;font-variant-numeric:tabular-nums}.mini-readings small{font-size:13px;font-weight:400}.item-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:22px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.switch-label{flex-direction:row;align-items:center;font-weight:400;gap:8px}.switch-label input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:36px;min-height:22px;height:22px;border-radius:20px;padding:0;background:#a0aea6;cursor:pointer;flex-shrink:0}.switch-label input:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%}.switch-label input:checked{background:var(--green)}.switch-label input:checked:before{left:16px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#16261d66;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.dialog{background:#fff;border-radius:8px;padding:24px;width:min(500px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 14px 40px #16261d33}.dialog .section-heading{margin-bottom:16px}.dialog>h2{margin-bottom:16px}.dialog textarea{overflow-wrap:anywhere}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.login-page{min-height:100dvh;padding:64px 20px 30px;display:flex;flex-direction:column;align-items:center;background:#f4f7f6}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:40px;color:var(--green)}.login-brand strong{font-size:28px}.login-brand>span{font-size:15px;border-left:1px solid #bdccc3;padding-left:12px;color:var(--muted)}.login-form{width:min(380px,100%);padding:0 8px}.login-form h1{margin-bottom:26px}.login-form>button{width:100%;min-height:46px;margin-top:16px}.login-form label{font-size:15px;font-weight:500}.password-field{position:relative;display:block}.password-field>input{padding-right:46px}.password-field>button{position:absolute;right:2px;top:2px}.login-note{margin-top:28px;font-size:13px}.startup{display:flex;align-items:center;justify-content:center;gap:10px;min-height:100dvh;color:var(--green)}.spin{animation:spin 1.4s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1000px){.sidebar{width:176px;padding:20px 10px}.workspace>main{padding:24px 20px 48px}.topbar{padding:0 20px}.greenhouse-list{grid-template-columns:1fr}.sensor{padding:18px}}@media(max-width:700px){.topbar{height:60px;padding:0 14px}.brand{gap:7px}.brand strong{font-size:20px}.brand>span{font-size:12px;padding-left:8px}.brand>svg{width:21px}.account{gap:2px}.account>span{max-width:82px;font-size:12px}.workspace{min-height:calc(100dvh - 60px);display:block}.sidebar{width:100%;border-right:0;border-bottom:1px solid var(--line);padding:6px 12px;display:flex;overflow-x:auto;gap:5px}.sidebar a{flex-shrink:0;margin:0;min-height:40px;padding:8px 10px;font-size:14px;gap:6px}.workspace>main,.farmer-shell .workspace>main{padding:22px 16px 44px}.page-heading{gap:10px;margin-bottom:22px}.page-heading h1{font-size:23px}.page-heading .actions{flex-shrink:0;gap:2px}.page-heading .primary{font-size:14px;padding:9px 10px}.page-heading .primary svg{width:16px}.detail-actions{gap:6px}.detail-actions button{font-size:12px;padding:8px}.sensor{padding:16px 12px}.sensor strong{font-size:26px}.sensor small{font-size:12px}.sensor>div{gap:4px}.sensor>span{font-size:13px}.sensor>span svg{width:16px}.sensor.n,.sensor.p,.sensor.k{padding-left:12px;padding-right:4px}.sensor.n>div,.sensor.p>div,.sensor.k>div{display:block}.sensor.n small,.sensor.p small,.sensor.k small{display:block;margin-top:1px}.section-heading{gap:10px}.section-heading h2{font-size:18px}.chart-area{height:250px}.segmented button{padding:7px 12px}.search-label{width:auto;flex:1}.table-wrap{margin:0 -4px}.dialog{padding:20px;max-height:calc(100dvh - 24px)}.modal-backdrop{padding:12px}.login-page{padding-top:52px}.login-brand{gap:8px}.login-brand strong{font-size:26px}.greenhouse-item{padding:20px}.sync-line{font-size:13px}.form-actions button{min-width:90px}}@media(prefers-reduced-motion:reduce){.spin{animation:none}}.app-shell,.login-page,body:has(.app-shell) .modal-backdrop{--green:#157052;--primary:#157052;--line:#dfe6e5;--muted:#5e706d;--surface:#fff;--canvas:#f3f6f7;--ink:#233b37;--soft-green:#eaf4ef;--control-line:#bacac5;--soft-shadow:0 4px 16px rgba(29,57,48,.04);color:var(--ink);color-scheme:light}.app-shell{background:var(--canvas);min-height:100dvh}.app-shell .topbar{height:72px;padding:0 28px;border-color:var(--line)}.app-shell .brand{gap:12px}.app-shell .brand>svg{width:30px;height:30px}.app-shell .brand strong{font-size:23px;font-weight:700}.app-shell .brand>span{font-size:13px;padding-left:16px}.app-shell .account{gap:16px}.app-shell .account>span{font-weight:600}.app-shell .account .icon-button{color:var(--muted);border:1px solid var(--line);border-radius:6px}.app-shell .workspace{min-height:calc(100dvh - 72px)}.app-shell .sidebar{width:218px;padding:24px 14px;background:var(--surface)}.app-shell .sidebar a{position:relative;min-height:44px;margin-bottom:5px;padding:11px 14px;border-radius:6px;font-size:14px;color:#536760}.app-shell .sidebar a svg{color:#71867c}.app-shell .sidebar a:hover{background:#f4f7f6;color:var(--green)}.app-shell .sidebar a.active{background:var(--soft-green);color:#126347;font-weight:700}.app-shell .sidebar a.active svg{color:var(--green)}.app-shell .workspace>main{padding:32px 36px 64px;max-width:1600px}.app-shell h1{font-size:26px;line-height:1.4;font-weight:700}.app-shell h2{font-size:18px;line-height:1.5}.app-shell h3{font-size:16px;line-height:1.5}.app-shell .page-heading{margin-bottom:28px;gap:16px;flex-wrap:wrap}.app-shell .page-heading p{font-size:13px;margin-top:6px}.app-shell .page-heading .actions{gap:8px}.app-shell .section-heading{gap:14px}.app-shell button,.login-page button,body:has(.app-shell) .dialog button{border-radius:6px;transition:background-color .15s,border-color .15s,color .15s}.app-shell button:not(.primary):not(.icon-button):not(.text-button):not(.back-button):not(.cleanup-button):not(.delete-button):not(.edit-button){border-color:var(--control-line)}.app-shell button.primary,.login-page button.primary{background:var(--green);border-color:var(--green);box-shadow:0 2px 4px #1570521a}.app-shell button.primary:hover:not(:disabled),.login-page button.primary:hover:not(:disabled){background:#105d44;border-color:#105d44}.app-shell button.warning-text:hover:not(:disabled){background:#fff0f1;border-color:#e6b9bd}.app-shell .text-button{font-weight:600}.app-shell :is(input,select,textarea),.login-page input,body:has(.app-shell) .dialog :is(input,select,textarea){border-color:var(--control-line);border-radius:6px}.app-shell :is(input,select,textarea):hover:not(:disabled),.login-page input:hover{border-color:#7c9d8e}.app-shell :is(input,select,textarea):focus-visible,.login-page input:focus-visible,body:has(.app-shell) .dialog :is(input,select,textarea):focus-visible{outline:2px solid #157052;outline-offset:2px}.app-shell input::placeholder,.login-page input::placeholder{color:#697a75;opacity:1}.app-shell label{color:#405850;font-size:13px;line-height:1.6}.app-shell .switch-label{font-size:14px}.app-shell input[type=checkbox]{accent-color:var(--green)}.app-shell .search-bar{gap:12px;margin-bottom:22px}.app-shell .search-label{width:320px}.app-shell .table-wrap{border:1px solid var(--line);border-radius:8px;box-shadow:var(--soft-shadow)}.app-shell table{font-size:14px}.app-shell th{padding:14px 18px;background:#eef3f4;color:#50645e;font-size:13px;font-weight:600}.app-shell td{padding:17px 18px;border-top-color:#e9eeec}.app-shell tbody tr:hover td{background:#f7faf9}.app-shell td>button{vertical-align:middle}.app-shell td>button+button{margin-left:8px}.app-shell td small{margin-top:5px;line-height:1.5}.app-shell .status{font-size:12px;font-weight:600;padding:4px 9px;border-radius:5px;min-height:27px}.app-shell .good{background:#e6f4ec;color:#17603f}.app-shell .neutral{background:#edf0f1;color:#606d70}.app-shell .warn{background:#fff3dc;color:#855514}.app-shell .bad{background:#fcebed;color:#a42b3a}.app-shell .pagination{padding-top:4px;font-size:13px}.app-shell .empty{min-height:260px;border:1px dashed #cad7d1;border-radius:8px;background:#fafcfb}.app-shell .error{border-color:#edc7cc;background:#fff2f3;color:#9f2834}.app-shell .notice{background:#fff8eb;border-color:#eadbc0;color:#79501d}.app-shell .notification-settings,.app-shell .weather-settings{max-width:1100px}.app-shell :is(.notification-settings,.weather-settings) fieldset>section{padding:28px 0;border-bottom-color:var(--line)}.app-shell :is(.notification-settings,.weather-settings) fieldset>section:first-child{padding-top:4px}.app-shell .policy-table{border:1px solid var(--line);border-radius:8px;background:#fff}.app-shell .policy-table table{margin-bottom:-1px}.app-shell .policy-table :is(th,td){padding:15px 16px}.app-shell .channel-readiness{gap:24px}.app-shell .channel-readiness>div{padding:4px 0}.app-shell .channel-readiness p{font-size:13px;line-height:1.7}.app-shell .ai-settings-form{max-width:680px}.app-shell .ai-settings-form>fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.app-shell .ai-settings-form>fieldset>label{min-width:0;margin:18px 0 4px}.app-shell .ai-settings-form>fieldset>:is(p,.settings-checkbox){grid-column:1/-1}.app-shell .settings-actions,.app-shell .form-actions{gap:10px}.app-shell .detail-theme .detail-meta{padding:24px 24px 0;border-color:var(--line)}.app-shell .detail-theme .detail-actions{padding:18px 24px 24px;border-color:var(--line)}.app-shell .detail-theme .detail-meta h1{font-size:24px}.app-shell .detail-theme .sensor-grid{gap:14px}.app-shell .detail-theme .sensor{padding:22px 18px;border-color:var(--line);box-shadow:var(--soft-shadow)}.app-shell .detail-theme .sensor>span{color:#50685c}.app-shell .detail-theme .sensor.temperature>span svg{color:#a15d30}.app-shell .detail-theme .sensor.humidity>span svg{color:#287da6}.app-shell .detail-theme .sensor strong{font-size:36px;color:#226749}.app-shell .detail-theme .reading-muted strong{color:#737f79}.app-shell .detail-theme .advice-section{padding:24px;border-color:#d4e2da;box-shadow:var(--soft-shadow)}.app-shell .detail-theme .advice-text{font-size:15px;line-height:1.9}.app-shell .detail-theme .collection-time{font-size:12px}.app-shell .history-section,.app-shell .sensor-history{padding:24px 0}.app-shell .history-section .history-table{border-radius:8px}.app-shell .farmer-greenhouse-card{background:#fff;border-color:var(--line);box-shadow:var(--soft-shadow)}.app-shell .farmer-greenhouse-card h2{font-size:20px}.app-shell .farmer-card-footer button:hover{background:#dfeee6}.app-shell .farmer-readings>div>span{font-size:13px}.farmer-shell .workspace>main{max-width:1080px;padding:32px 28px 64px}.app-shell .notification-preferences h3{margin-top:0}.app-shell .farmer-preferences{padding:24px;background:#fff;border-color:var(--line)}.app-shell .farmer-preferences h3{font-size:18px}.app-shell .farmer-preferences .subscription-options{gap:0 28px}body:has(.app-shell) .modal-backdrop{background:#192b2661}body:has(.app-shell) .dialog{border:1px solid #dfe6e5;box-shadow:0 18px 64px #1830272e;padding:28px}body:has(.app-shell) .dialog>.section-heading{padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:20px}body:has(.app-shell) .dialog>.section-heading h2{font-size:20px}.login-page{padding:clamp(48px,10vh,100px) 20px 40px;background:#f3f6f7}.login-page .login-brand{margin-bottom:32px;gap:12px}.login-page .login-brand strong{font-size:28px}.login-page .login-brand>svg{width:34px;height:34px}.login-page .login-brand>span{font-size:14px;border-color:#c8d6ce;padding-left:14px}.login-page .login-form{width:min(430px,100%);background:#fff;padding:36px;border:1px solid #dfe6e5;border-radius:8px;box-shadow:0 10px 36px #1d39300f}.login-page .login-form h1{font-size:24px;margin:0 0 28px}.login-page .login-form>label{font-size:14px;margin:20px 0;gap:8px;color:#405850}.login-page .login-form input{min-height:48px}.login-page .password-field>button{top:4px;right:4px}.login-page .login-form>button{min-height:48px;margin-top:12px;font-weight:600}.login-page .login-note{margin-top:24px;text-align:center}@media(min-width:1001px){.app-shell .sidebar{position:sticky;top:0;height:calc(100dvh - 72px);overflow-y:auto;align-self:flex-start}}@media(max-width:1100px)and (min-width:701px){.app-shell .sidebar{width:188px;padding:22px 10px}.app-shell .workspace>main{padding:28px 24px 56px}.app-shell .sidebar a{padding:10px 12px;font-size:13px;gap:9px}}@media(max-width:700px){.app-shell .topbar{height:64px;padding:0 16px;gap:8px}.app-shell .brand{gap:8px}.app-shell .brand>svg{width:25px;height:25px}.app-shell .brand strong{font-size:20px}.app-shell .brand>span{font-size:11px;padding-left:9px}.app-shell .account{gap:6px}.app-shell .account>span{max-width:72px;font-size:12px}.app-shell .account .icon-button{width:36px;height:36px;min-width:36px;min-height:36px;padding:8px}.app-shell .workspace{min-height:calc(100dvh - 64px)}.app-shell .sidebar{width:100%;padding:8px 12px;gap:4px}.app-shell .sidebar a{margin:0;padding:10px 12px;font-size:13px;gap:7px}.app-shell .workspace>main,.farmer-shell .workspace>main{padding:24px 16px 48px}.app-shell .page-heading{margin-bottom:24px;gap:12px}.app-shell h1,.app-shell .page-heading h1{font-size:23px}.app-shell .search-label{width:auto;flex:1}.app-shell .table-wrap{margin:0}.app-shell :is(th,td){padding:14px}.app-shell .detail-theme .detail-meta{padding:20px 16px 0}.app-shell .detail-theme .detail-actions{padding:16px}.app-shell .detail-theme .sensor-grid{gap:10px}.app-shell .detail-theme .sensor{padding:18px 12px}.app-shell .detail-theme .sensor strong{font-size:30px}.app-shell .detail-theme .advice-section,.app-shell .farmer-preferences{padding:20px 16px}.app-shell .ai-settings-form>fieldset{grid-template-columns:minmax(0,1fr)}body:has(.app-shell) .dialog{padding:20px}.login-page{padding:56px 20px 32px}.login-page .login-brand{gap:8px}.login-page .login-brand strong{font-size:26px}.login-page .login-brand>span{padding-left:10px;font-size:12px}.login-page .login-form{padding:28px 24px}}@media(max-width:380px){.app-shell .brand>span{display:none}.login-page .login-brand{flex-wrap:wrap;justify-content:center}.login-page .login-form{padding:26px 20px}}@media(prefers-reduced-motion:reduce){.app-shell button,.login-page button,body:has(.app-shell) .dialog button{transition:none}}
