.lopin-button[data-v-798c724a]{align-items:center;border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600;gap:var(--space-2);justify-content:center;line-height:var(--type-small-line);min-height:var(--control-min-height);padding:var(--space-2) var(--space-4);transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard)}.lopin-button[data-v-798c724a]:focus-visible{box-shadow:0 0 0 var(--focus-ring-width) var(--color-primary-soft);outline:none}.lopin-button--primary[data-v-798c724a]{background:var(--color-primary);color:var(--color-surface)}.lopin-button--primary[data-v-798c724a]:hover:not(:disabled){background:var(--color-primary-strong)}.lopin-button--soft[data-v-798c724a]{background:var(--color-primary-soft);color:var(--color-primary-strong)}.lopin-button--soft[data-v-798c724a]:hover:not(:disabled){background:var(--color-surface-alt)}.lopin-button--ghost[data-v-798c724a]{background:transparent;border-color:var(--color-border);color:var(--color-ink)}.lopin-button--ghost[data-v-798c724a]:hover:not(:disabled){background:var(--color-surface-alt)}.lopin-button[data-v-798c724a]:disabled{background:var(--color-surface-alt);border-color:var(--color-border);color:var(--color-ink-soft);cursor:not-allowed}.lopin-button.is-loading[data-v-798c724a]{pointer-events:none}.spinner[data-v-798c724a]{animation:spin-798c724a .8s linear infinite;border:2px solid currentcolor;border-right-color:transparent;border-radius:var(--radius-pill);height:14px;width:14px}@keyframes spin-798c724a{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lopin-help-hint[data-v-cdcbfec4]{align-items:center;display:inline-flex;gap:var(--space-1)}.lopin-help-hint__label[data-v-cdcbfec4]{color:var(--color-ink);font-size:var(--type-small-size);font-weight:600}.lopin-help-hint__btn[data-v-cdcbfec4]{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:700;height:20px;justify-content:center;line-height:1;min-width:20px;padding:0;transition:border-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard)}.lopin-help-hint__btn[data-v-cdcbfec4]:hover,.lopin-help-hint__btn[data-v-cdcbfec4]:focus-visible{border-color:var(--color-primary);color:var(--color-primary-strong);outline:none}.lopin-help-hint__motion[data-v-cdcbfec4]{transform-origin:bottom center}.lopin-help-hint__content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);isolation:isolate;max-width:32ch;padding:var(--space-2) var(--space-3);z-index:100}.lopin-help-hint__text{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0}.lopin-field[data-v-defe655a]{display:grid;gap:var(--space-2);max-width:36ch;width:100%}.lopin-field__label-row[data-v-defe655a]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-1)}.lopin-field__label[data-v-defe655a]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600;line-height:var(--type-small-line)}.lopin-field__input[data-v-defe655a]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line);min-height:44px;padding:var(--space-2) var(--space-3);transition:border-color var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard),background-color var(--motion-micro) var(--ease-standard)}.lopin-field__input[data-v-defe655a]:hover{border-color:var(--color-primary)}.lopin-field__input[data-v-defe655a]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-field__input[aria-invalid=true][data-v-defe655a]{border-color:var(--color-negative)}.lopin-field__hint[data-v-defe655a],.lopin-field__error[data-v-defe655a]{font-family:var(--font-body);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0}.lopin-field__hint[data-v-defe655a]{color:var(--color-ink-soft)}.lopin-field__error[data-v-defe655a]{color:var(--color-negative-text)}.lopin-dropdown[data-v-a5f9a133]{display:grid;gap:var(--space-2);max-width:36ch;position:relative;width:100%}.lopin-dropdown--inline[data-v-a5f9a133]{max-width:none;width:auto}.lopin-dropdown--inline .lopin-dropdown__trigger[data-v-a5f9a133]{min-width:12rem;width:auto}.lopin-dropdown__label[data-v-a5f9a133]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600;line-height:var(--type-small-line)}.lopin-dropdown__trigger[data-v-a5f9a133]{align-items:center;background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);color:var(--color-ink);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--type-body-size);justify-content:space-between;line-height:var(--type-body-line);min-height:44px;padding:var(--space-2) var(--space-3);text-align:left;width:100%}.lopin-dropdown__trigger[data-v-a5f9a133]:hover,.lopin-dropdown__trigger.is-open[data-v-a5f9a133],.lopin-dropdown__trigger[data-state=open][data-v-a5f9a133]{border-color:var(--color-primary)}.lopin-dropdown__trigger[data-v-a5f9a133]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-dropdown__trigger.lopin-dropdown-confirm[data-v-a5f9a133]{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-soft)}.lopin-dropdown__value-wrap[data-v-a5f9a133]{min-width:0;overflow:hidden}.lopin-dropdown__value[data-v-a5f9a133]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lopin-dropdown__chevron[data-v-a5f9a133]{color:var(--color-ink-soft);display:inline-flex;flex-shrink:0;transition:transform var(--motion-micro) var(--ease-standard)}.lopin-dropdown__trigger.is-open .lopin-dropdown__chevron[data-v-a5f9a133],.lopin-dropdown__trigger[data-state=open] .lopin-dropdown__chevron[data-v-a5f9a133]{transform:rotate(180deg)}.lopin-dropdown__list[data-v-a5f9a133]{max-height:220px;min-width:var(--reka-select-trigger-width);overflow:auto;padding:var(--space-1);z-index:60}.lopin-dropdown__option[data-v-a5f9a133]{border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--type-small-size);justify-content:space-between;padding:var(--space-2) var(--space-3);transition:background-color var(--motion-micro) var(--ease-standard)}.lopin-dropdown__option.is-optimal[data-v-a5f9a133]{background:color-mix(in srgb,var(--color-primary-soft) 55%,transparent)}.lopin-dropdown__option.is-flash[data-v-a5f9a133]{background:var(--color-primary-soft)}.lopin-dropdown__option[data-disabled][data-v-a5f9a133]{color:var(--color-ink-soft);cursor:not-allowed}.lopin-dropdown__option[data-highlighted][data-v-a5f9a133]{background:var(--color-primary-soft)}.lopin-dropdown__option[data-state=checked][data-v-a5f9a133]{color:var(--color-primary-strong);font-weight:600}.lopin-dropdown__item-check[data-v-a5f9a133]{align-items:center;color:var(--color-primary);display:inline-flex;justify-content:center;width:16px}.lopin-plant-combobox__row[data-v-23ff2749]{align-items:center;display:flex;gap:var(--space-2);width:100%}.lopin-plant-combobox__thumb[data-v-23ff2749]{border-radius:var(--radius-sm);flex-shrink:0;height:1.75rem;object-fit:cover;width:1.75rem}.lopin-plant-combobox__thumb--empty[data-v-23ff2749]{background:color-mix(in srgb,var(--color-primary-soft) 40%,var(--color-surface));display:inline-block}.lopin-plant-combobox__name[data-v-23ff2749]{flex:1;font-size:var(--type-body-size);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lopin-plant-combobox__companion[data-v-23ff2749]{flex-shrink:0;font-size:var(--type-caption-size);font-weight:600}.lopin-plant-combobox__companion--good[data-v-23ff2749]{color:var(--color-primary-strong)}.lopin-plant-combobox__companion--warn[data-v-23ff2749]{color:var(--color-negative)}.lopin-plant-combobox[data-v-e15370f3]{display:grid;gap:var(--space-2);width:100%}.lopin-plant-combobox__label[data-v-e15370f3]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600}.lopin-plant-combobox__anchor[data-v-e15370f3]{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:var(--space-2);min-height:2.5rem;padding-inline:var(--space-2);width:100%}.lopin-plant-combobox__anchor[data-v-e15370f3]:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)}.lopin-plant-combobox__input[data-v-e15370f3]{background:transparent;border:none;color:var(--color-ink);flex:1;font-family:var(--font-body);font-size:var(--type-body-size);min-width:0;outline:none}.lopin-plant-combobox__chevron-btn[data-v-e15370f3]{align-items:center;background:transparent;border:none;color:var(--color-ink-soft);cursor:pointer;display:inline-flex;padding:var(--space-1)}.lopin-plant-combobox__content[data-v-e15370f3]{min-width:var(--reka-combobox-trigger-width);overflow:hidden}.lopin-plant-combobox__viewport[data-v-e15370f3]{max-height:16rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-1)}.lopin-plant-combobox__group-label[data-v-e15370f3]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;padding:var(--space-1) var(--space-2);text-transform:uppercase}.lopin-plant-combobox__item[data-v-e15370f3]{border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:var(--space-2)}.lopin-plant-combobox__empty[data-v-e15370f3]{color:var(--color-ink-soft);font-size:var(--type-small-size);padding:var(--space-3);text-align:center}.lopin-plant-combobox__separator[data-v-e15370f3]{background:var(--color-border);height:1px;margin-block:var(--space-1)}.lopin-plant-family-glyph[data-v-b7809ca1]{display:block;flex-shrink:0}.lopin-chip[data-v-377136e9]{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink);display:inline-flex;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;gap:var(--space-1);line-height:var(--type-caption-line);padding:0 var(--space-3);transition:background-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard),transform var(--motion-micro) var(--ease-standard)}.lopin-chip[data-v-377136e9]:hover{transform:translateY(calc(var(--space-1) * -1))}.lopin-chip--companion-pos[data-v-377136e9]{background:var(--color-positive-soft-bg);border-color:var(--color-positive);color:var(--color-positive-text)}.lopin-chip--companion-neg[data-v-377136e9]{background:var(--color-negative-soft-bg);border-color:var(--color-negative);color:var(--color-negative-text)}.lopin-chip--ai-suggested[data-v-377136e9]{background:var(--color-ai-soft-bg);border-color:var(--color-ai);color:var(--color-ai)}.lopin-chip--neutral[data-v-377136e9]{background:var(--color-surface-alt)}.lopin-checkbox[data-v-fb19f369]{align-items:center;color:var(--color-ink);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-small-size);gap:var(--space-2);line-height:var(--type-small-line)}.lopin-checkbox__root[data-v-fb19f369]{display:inline-flex}.lopin-checkbox__mark[data-v-fb19f369]{align-items:center;background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-surface);display:inline-flex;height:18px;justify-content:center;width:18px}.lopin-checkbox:hover .lopin-checkbox__mark[data-v-fb19f369]{border-color:var(--color-primary)}.lopin-checkbox__root:focus-visible .lopin-checkbox__mark[data-v-fb19f369]{box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-checkbox.is-checked .lopin-checkbox__mark[data-v-fb19f369]{background:var(--color-primary);border-color:var(--color-primary)}.lopin-checkbox__indicator[data-v-fb19f369]{align-items:center;display:inline-flex;justify-content:center}.lopin-checkbox__check[data-v-fb19f369]{height:10px;width:12px}.lopin-checkbox__path[data-v-fb19f369]{stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset var(--motion-small) var(--ease-enter)}.lopin-checkbox__path.is-drawn[data-v-fb19f369]{stroke-dashoffset:0}.lopin-checkbox.is-disabled[data-v-fb19f369]{color:var(--color-ink-soft);cursor:not-allowed}.lopin-checkbox.is-disabled .lopin-checkbox__mark[data-v-fb19f369]{background:var(--color-surface-alt);border-color:var(--color-border)}.lopin-switch[data-v-e089ac86]{background:var(--color-border);border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;position:relative;transition:background-color var(--motion-micro) var(--ease-standard);width:38px}.lopin-switch[data-state=checked][data-v-e089ac86]{background:var(--color-primary)}.lopin-switch[data-v-e089ac86]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-switch[data-disabled][data-v-e089ac86]{cursor:not-allowed;opacity:.55}.lopin-switch__thumb[data-v-e089ac86]{background:var(--color-surface);border-radius:50%;display:block;height:18px;pointer-events:none;transform:translate(2px);transition:transform var(--motion-small) var(--ease-standard);width:18px}.lopin-switch[data-state=checked] .lopin-switch__thumb[data-v-e089ac86]{transform:translate(18px)}.lopin-segmented[data-v-b1c2e497]{border:1px solid var(--color-border);border-radius:var(--radius-pill);display:inline-flex;flex-shrink:0;overflow:hidden}.lopin-segmented__item[data-v-b1c2e497]{background:transparent;border:0;color:var(--color-ink-soft);cursor:pointer;font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);padding:var(--space-2) var(--space-3);position:relative;white-space:nowrap}.lopin-segmented__item+.lopin-segmented__item[data-v-b1c2e497]{border-left:1px solid var(--color-border)}.lopin-segmented__item[data-state=checked][data-v-b1c2e497]{color:var(--color-primary-strong);font-weight:600}.lopin-segmented__label[data-v-b1c2e497]{position:relative;z-index:1}.lopin-segmented__indicator[data-v-b1c2e497]{background:var(--color-primary-soft);border-radius:var(--radius-pill);inset:0;position:absolute;transition:background-color var(--motion-micro) var(--ease-standard)}.lopin-segmented__item[data-v-b1c2e497]:focus-visible{outline:none;z-index:1}.lopin-segmented__item:focus-visible .lopin-segmented__label[data-v-b1c2e497]{box-shadow:0 0 0 2px var(--color-primary-soft)}.lopin-stepper[data-v-0a304f14]{display:grid;gap:var(--space-2);max-width:100%;min-width:0;width:100%}.lopin-stepper__label[data-v-0a304f14]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600;line-height:var(--type-small-line)}.lopin-stepper__controls[data-v-0a304f14]{align-items:center;display:inline-flex;gap:var(--space-2);max-width:100%;min-width:0}.lopin-stepper__btn[data-v-0a304f14],.lopin-stepper__input[data-v-0a304f14]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);min-height:40px}.lopin-stepper__input[data-v-0a304f14]{font-weight:700;min-width:56px;padding:0 var(--space-2);text-align:center;width:4rem}.lopin-stepper__input[data-v-0a304f14]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-stepper__btn[data-v-0a304f14]{cursor:pointer;padding:0 var(--space-3)}.lopin-stepper__btn[data-v-0a304f14]:hover:not(:disabled){border-color:var(--color-primary)}.lopin-stepper__btn[data-v-0a304f14]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-stepper__btn[data-v-0a304f14]:disabled{background:var(--color-surface-alt);color:var(--color-ink-soft);cursor:not-allowed}.lopin-card[data-v-4cbc1bc0]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-ink);display:grid;gap:var(--space-3);padding:var(--space-4);transition:box-shadow var(--motion-micro) var(--ease-standard),transform var(--motion-micro) var(--ease-standard)}.lopin-card[data-v-4cbc1bc0]:hover{box-shadow:var(--shadow-soft)}.lopin-card--elevated[data-v-4cbc1bc0]{box-shadow:var(--shadow-lift)}.lopin-card__header[data-v-4cbc1bc0]{font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.lopin-card__content[data-v-4cbc1bc0]{font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line)}.lopin-panel[data-v-ae25b60c]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:grid;gap:var(--space-3);padding:var(--space-4);transition:border-color var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard)}.lopin-panel[data-v-ae25b60c]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-soft)}.lopin-panel__heading[data-v-ae25b60c]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-panel__content[data-v-ae25b60c]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line)}.lopin-sheet__backdrop[data-v-47e4bf04]{border:none;cursor:pointer;inset:0;position:fixed;z-index:0}.lopin-sheet__drawer[data-v-47e4bf04]{background:var(--color-surface);border-left:thin solid var(--color-border);box-shadow:var(--shadow-lift);display:grid;gap:var(--space-3);height:100%;max-width:420px;padding:var(--space-4);position:fixed;right:0;top:0;width:100%;z-index:1}.lopin-sheet__header[data-v-47e4bf04]{align-items:center;display:flex;justify-content:space-between}.lopin-sheet__header h2[data-v-47e4bf04]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-sheet__close[data-v-47e4bf04]{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;min-height:36px;padding:0 var(--space-3);transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard)}.lopin-sheet__close[data-v-47e4bf04]:hover{background:var(--color-surface-alt);border-color:var(--color-primary)}.lopin-sheet__close[data-v-47e4bf04]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-sheet__content[data-v-47e4bf04]{color:var(--color-ink-soft);font-family:var(--font-body);overflow:auto}.lopin-tabs[data-v-07f9aaa5]{display:grid;gap:var(--space-3)}.lopin-tabs__list[data-v-07f9aaa5]{border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-2);position:relative}.lopin-tabs__tab[data-v-07f9aaa5]{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-ink-soft);cursor:pointer;font-family:var(--font-body);min-height:40px;padding:var(--space-1) var(--space-3);transition:color var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard)}.lopin-tabs__tab-inner[data-v-07f9aaa5]{display:grid;gap:1px;text-align:left}.lopin-tabs__tab-label[data-v-07f9aaa5]{font-size:var(--type-small-size);font-weight:600;line-height:1.2}.lopin-tabs__tab-subtitle[data-v-07f9aaa5]{color:var(--color-ink-muted);font-size:var(--type-caption-size);font-weight:500;line-height:1.1}.lopin-tabs__tab[data-v-07f9aaa5]:hover:not(:disabled){color:var(--color-primary-strong)}.lopin-tabs__tab[data-v-07f9aaa5]:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary-soft);outline:none}.lopin-tabs__tab[data-state=active][data-v-07f9aaa5]{color:var(--color-ink)}.lopin-tabs__tab[data-v-07f9aaa5]:disabled{color:var(--color-ink-soft);cursor:not-allowed}.lopin-tabs__indicator[data-v-07f9aaa5]{background:var(--color-primary);bottom:-1px;height:2px;left:0;position:absolute;transform:translate(var(--reka-tabs-indicator-position));transition:transform var(--motion-small) var(--ease-standard),width var(--motion-small) var(--ease-standard);width:var(--reka-tabs-indicator-size)}.lopin-tabs__panel[data-v-07f9aaa5]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-small-size)}.lopin-empty-state[data-v-a8b3e99a]{background:var(--color-surface-alt);border:1px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-ink);display:grid;gap:var(--space-2);justify-items:start;padding:var(--space-5)}.lopin-empty-state__title[data-v-a8b3e99a]{font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-empty-state__description[data-v-a8b3e99a]{color:var(--color-ink-soft);font-family:var(--font-body);margin:0}.lopin-empty-state__action[data-v-a8b3e99a]{margin-top:var(--space-2)}.lopin-badge[data-v-cc359bad]{align-items:center;border:thin solid transparent;border-radius:var(--radius-pill);display:inline-flex;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:700;line-height:var(--type-caption-line);min-height:32px;padding:var(--space-2) var(--space-4);transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard),transform var(--motion-micro) var(--ease-standard)}.lopin-badge[data-v-cc359bad]:hover{transform:scale(1.03)}.lopin-badge--reward[data-v-cc359bad]{background:var(--color-sun);border-color:color-mix(in srgb,var(--color-sun) 68%,var(--color-ink));color:var(--color-ink)}.lopin-badge--calm[data-v-cc359bad]{background:var(--color-primary-soft);border-color:color-mix(in srgb,var(--color-primary-soft) 62%,var(--color-primary-strong));color:var(--color-primary-strong)}.lopin-progress-bar[data-v-b89d31d0]{display:grid;gap:var(--space-2);width:100%}.lopin-progress-bar__label[data-v-b89d31d0]{color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:0}.lopin-progress-bar__track[data-v-b89d31d0]{background:var(--color-surface-alt);border-radius:var(--radius-pill);height:10px;overflow:hidden;width:100%}.lopin-progress-bar__fill[data-v-b89d31d0]{background:var(--color-primary);border-radius:var(--radius-pill);height:100%;min-width:0}.lopin-progress-ring[data-v-716bcbf5]{display:grid;place-items:center;position:relative;width:fit-content}.lopin-progress-ring__svg[data-v-716bcbf5]{display:block}.lopin-progress-ring__track[data-v-716bcbf5]{stroke:var(--color-surface-alt)}.lopin-progress-ring__value[data-v-716bcbf5]{stroke:var(--color-primary);transition:stroke-dashoffset var(--motion-medium) var(--ease-emphasized)}.lopin-progress-ring__center[data-v-716bcbf5]{display:grid;gap:var(--space-1);inset:0;place-content:center;position:absolute;text-align:center}.lopin-progress-ring__percent[data-v-716bcbf5]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h3-size);line-height:var(--type-h3-line)}.lopin-progress-ring__label[data-v-716bcbf5]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.lopin-trial-hypothesis-form[data-v-ea8466a5]{display:grid;gap:var(--space-3)}.lopin-trial-hypothesis-form__field[data-v-ea8466a5]{display:grid;gap:var(--space-1)}.lopin-trial-hypothesis-form__label[data-v-ea8466a5]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.lopin-trial-hypothesis-form__textarea[data-v-ea8466a5],.lopin-trial-hypothesis-form__input[data-v-ea8466a5]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line);padding:var(--space-2) var(--space-3);width:100%}.lopin-trial-hypothesis-form__textarea[data-v-ea8466a5]:focus-visible,.lopin-trial-hypothesis-form__input[data-v-ea8466a5]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.lopin-trial-hypothesis-form__plantings[data-v-ea8466a5]{display:grid;gap:var(--space-2)}.lopin-trial-hypothesis-form__plantings-label[data-v-ea8466a5]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.lopin-trial-hypothesis-form__planting[data-v-ea8466a5]{align-items:center;color:var(--color-ink);display:flex;font-size:var(--type-small-size);gap:var(--space-2)}.lopin-trial-hypothesis-form__actions[data-v-ea8466a5]{display:flex;justify-content:flex-end}.lopin-trial-observations[data-v-6545b455]{display:grid;gap:var(--space-3)}.lopin-trial-observations__header[data-v-6545b455]{display:grid;gap:var(--space-1)}.lopin-trial-observations__title[data-v-6545b455]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:500;line-height:var(--type-h2-line);margin:0}.lopin-trial-observations__subtitle[data-v-6545b455]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.lopin-trial-observations__list[data-v-6545b455]{display:grid;gap:var(--space-2);list-style:none;margin:0;padding:0}.lopin-trial-observations__item[data-v-6545b455]{border-top:1px solid var(--color-border);padding-top:var(--space-2)}.lopin-trial-observations__item-head[data-v-6545b455]{align-items:center;display:flex;justify-content:space-between}.lopin-trial-observations__kind[data-v-6545b455]{color:var(--color-primary-strong);font-size:var(--type-caption-size);font-weight:600}.lopin-trial-observations__time[data-v-6545b455]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.lopin-trial-observations__label[data-v-6545b455]{color:var(--color-ink);font-size:var(--type-small-size);margin:var(--space-1) 0 0}.lopin-trial-observations__detail[data-v-6545b455]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:var(--space-1) 0 0}.lopin-trial-observations__empty[data-v-6545b455]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0}.lopin-trial-observations__form[data-v-6545b455]{display:grid;gap:var(--space-2)}.lopin-trial-observations__field[data-v-6545b455]{display:grid;gap:var(--space-1)}.lopin-trial-observations__field-label[data-v-6545b455]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.lopin-trial-observations__textarea[data-v-6545b455]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line);padding:var(--space-2) var(--space-3);width:100%}.lopin-trial-observations__textarea[data-v-6545b455]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.economics-entry-form__chips[data-v-ea08dea9]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.economics-entry-form__chip[data-v-ea08dea9]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);cursor:pointer;font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);padding:var(--space-2) var(--space-4);transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard)}.economics-entry-form__chip--active[data-v-ea08dea9]{background:var(--color-primary-soft);border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));color:var(--color-primary-strong);font-weight:600}.economics-entry-form__chip[data-v-ea08dea9]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.economics-entry-form__fields[data-v-ea08dea9]{display:grid;gap:var(--space-3)}.economics-entry-form__row[data-v-ea08dea9]{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.economics-entry-form__actions[data-v-ea08dea9]{display:flex;justify-content:flex-end;margin-top:var(--space-4)}.lopin-chart-host[data-v-3199790b]{flex:none;overflow:hidden;position:relative}.lopin-chart-host[data-v-3199790b] canvas{display:block;max-height:100%;max-width:100%}.insights-economics[data-v-84da4780]{display:grid;gap:var(--space-4)}.insights-economics__metrics[data-v-84da4780]{display:grid;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.insights-economics__metric[data-v-84da4780]{background:var(--color-surface-alt);border-radius:var(--radius-md);display:grid;gap:var(--space-1);padding:var(--space-3) var(--space-4)}.insights-economics__metric-label[data-v-84da4780]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.insights-economics__metric-value[data-v-84da4780]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h3-size);line-height:var(--type-h3-line)}.insights-economics__metric-value--positive[data-v-84da4780]{color:var(--color-primary-strong)}.insights-economics__chart-host[data-v-84da4780]{width:100%}.insights-economics__entries[data-v-84da4780]{display:grid;gap:var(--space-2);list-style:none;margin:0;padding:0}.insights-economics__entry[data-v-84da4780]{align-items:center;border-top:thin solid var(--color-border);display:flex;gap:var(--space-3);justify-content:space-between;padding-top:var(--space-2)}.insights-economics__entry[data-v-84da4780]:first-child{border-top:0;padding-top:0}.insights-economics__entry-main[data-v-84da4780]{display:grid;gap:var(--space-1);min-width:0}.insights-economics__entry-label[data-v-84da4780]{color:var(--color-ink);font-size:var(--type-small-size);line-height:var(--type-small-line)}.insights-economics__entry-bed[data-v-84da4780]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.insights-economics__entry-value[data-v-84da4780]{color:var(--color-ink);font-size:var(--type-small-size);font-variant-numeric:tabular-nums;white-space:nowrap}.lopin-icon[data-v-4708a622]{display:block;flex-shrink:0}.lopin-collection-wall[data-v-124cb433]{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));margin-top:var(--space-4)}.lopin-collection-wall__tile[data-v-124cb433]{border-radius:var(--radius-md);color:inherit;text-decoration:none;transition:transform var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard)}.lopin-collection-wall__tile[data-v-124cb433]:hover,.lopin-collection-wall__tile[data-v-124cb433]:focus-visible{box-shadow:var(--shadow-soft);outline:2px solid var(--color-primary-soft);transform:translateY(-2px)}.lopin-collection-wall__visual[data-v-124cb433]{aspect-ratio:1;border:thin solid var(--color-border);border-radius:var(--radius-md);height:4.5rem;overflow:hidden;position:relative;width:100%}.lopin-collection-wall__tile--collected .lopin-collection-wall__visual[data-v-124cb433]{box-shadow:var(--shadow-soft)}.lopin-collection-wall__photo[data-v-124cb433]{height:100%;object-fit:cover;width:100%}.lopin-collection-wall__check[data-v-124cb433]{background:var(--color-surface);border-radius:50%;bottom:var(--space-1);color:var(--color-positive);position:absolute;right:var(--space-1)}.lopin-collection-wall__visual--teaser[data-v-124cb433]{background:var(--color-surface-alt);border-style:dashed;opacity:.45}.lopin-collection-wall__visual--more[data-v-124cb433]{align-items:center;background:var(--color-surface-alt);border-style:dashed;color:var(--color-ink-soft);display:grid;gap:var(--space-1);justify-items:center;padding:var(--space-2);text-align:center}.lopin-collection-wall__more-label[data-v-124cb433]{font-family:var(--font-display);font-size:var(--type-h3-size);font-weight:700;line-height:1}.lopin-collection-wall__more-caption[data-v-124cb433]{font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.lopin-gamification-ladder[data-v-77e9c9ae]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-3);padding:var(--space-4)}.lopin-gamification-ladder__header[data-v-77e9c9ae]{align-items:center;display:flex;gap:var(--space-3)}.lopin-gamification-ladder__icon[data-v-77e9c9ae]{align-items:center;border:thin solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-shrink:0;height:2.75rem;justify-content:center;width:2.75rem}.lopin-gamification-ladder__titles[data-v-77e9c9ae]{display:grid;gap:var(--space-2);min-width:0}.lopin-gamification-ladder__name[data-v-77e9c9ae]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-body-size);font-weight:600;line-height:var(--type-body-line);margin:0}.lopin-gamification-ladder__bar[data-v-77e9c9ae] .lopin-progress-bar__label{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.lopin-gamification-ladder__next[data-v-77e9c9ae]{color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:0}.lopin-gamification-medal[data-v-2324b74d]{display:grid;gap:var(--space-1);justify-items:center;max-width:6.5rem;text-align:center}.lopin-gamification-medal__disc[data-v-2324b74d]{align-items:center;background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:50%;color:var(--color-ink-muted);display:flex;height:3.25rem;justify-content:center;position:relative;width:3.25rem}.lopin-gamification-medal--earned .lopin-gamification-medal__disc[data-v-2324b74d]{box-shadow:var(--shadow-soft)}.lopin-gamification-medal__lock[data-v-2324b74d]{bottom:0;position:absolute;right:0;transform:translate(15%,15%)}.lopin-gamification-medal__name[data-v-2324b74d]{color:var(--color-ink);font-size:var(--type-caption-size);font-weight:600;line-height:var(--type-caption-line);margin:0}.lopin-gamification-medal--locked .lopin-gamification-medal__name[data-v-2324b74d]{color:var(--color-ink-soft)}.insights-gamification__hero[data-v-09f37147]{align-items:center;display:grid;gap:var(--space-2);justify-items:center;margin:var(--space-2) 0 var(--space-1)}.insights-gamification__headline[data-v-09f37147]{color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:0;text-align:center}.insights-gamification__section-title[data-v-09f37147]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-body-size);font-weight:600;line-height:var(--type-body-line);margin:0 0 var(--space-3)}.insights-gamification__paliers[data-v-09f37147]{margin-top:var(--space-5)}.insights-gamification__ladders[data-v-09f37147]{display:grid;gap:var(--space-3)}.insights-gamification__milestones[data-v-09f37147]{margin-top:var(--space-5)}.insights-gamification__milestones-strip[data-v-09f37147]{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-5);justify-content:center}.season-recap[data-v-dfbcf814]{display:grid;gap:var(--space-4)}.season-recap__lead[data-v-dfbcf814]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.season-recap__stats[data-v-dfbcf814]{display:grid;gap:var(--space-3);grid-template-columns:repeat(3,1fr)}.season-recap__stat[data-v-dfbcf814]{background:var(--color-surface-alt);border-radius:var(--radius-md);display:grid;gap:var(--space-1);padding:var(--space-3);text-align:center}.season-recap__value[data-v-dfbcf814]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h3-size);line-height:var(--type-h3-line)}.season-recap__label[data-v-dfbcf814]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.season-recap__highlight[data-v-dfbcf814]{color:var(--color-ink);font-size:var(--type-body-size);line-height:var(--type-body-line);margin:0}.season-recap__retry[data-v-dfbcf814]{color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:0}.lopin-toast-host[data-v-3c8f102d]{align-items:center;display:flex;justify-content:flex-start;max-width:min(100%,28rem);min-height:2.75rem;position:relative;width:min(100%,28rem)}.lopin-toast[data-v-3c8f102d]{border-radius:var(--radius-md);box-shadow:var(--shadow-soft);color:var(--color-surface);flex:none;font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);max-width:100%;padding:var(--space-2) var(--space-3);white-space:normal;word-break:break-word}.lopin-toast--info[data-v-3c8f102d]{background:var(--color-sky)}.lopin-toast--success[data-v-3c8f102d]{background:var(--color-positive)}.lopin-modal__scrim[data-v-6a1bd394]{pointer-events:none}.lopin-confirm[data-v-6a1bd394]{display:grid;gap:var(--space-3);height:fit-content;inset:0;margin:auto;max-height:calc(100vh - 2 * var(--space-4));max-width:420px;padding:var(--space-4);pointer-events:auto;position:fixed;width:calc(100% - 2 * var(--space-4))}.lopin-confirm__title[data-v-6a1bd394]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-confirm__message[data-v-6a1bd394]{color:var(--color-ink-soft);font-family:var(--font-body);margin:0}.lopin-confirm__actions[data-v-6a1bd394]{display:flex;gap:var(--space-2);justify-content:flex-end}.lopin-confirm__btn[data-v-6a1bd394]{border:thin solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);min-height:40px;padding:0 var(--space-3);transform-origin:center}.lopin-confirm__btn[data-v-6a1bd394]:disabled{cursor:default}.lopin-confirm__btn--cancel[data-v-6a1bd394]{background:var(--color-surface-alt);color:var(--color-ink)}.lopin-confirm__btn--confirm[data-v-6a1bd394]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface)}.lopin-modal__scrim[data-v-6562aac6]{pointer-events:none}.lopin-confirm-hold[data-v-6562aac6]{display:grid;gap:var(--space-3);height:fit-content;inset:0;margin:auto;max-height:calc(100vh - 2 * var(--space-4));max-width:420px;padding:var(--space-4);pointer-events:auto;position:fixed;width:calc(100% - 2 * var(--space-4))}.lopin-confirm-hold__title[data-v-6562aac6]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-confirm-hold__message[data-v-6562aac6],.lopin-confirm-hold__hint[data-v-6562aac6]{color:var(--color-ink-soft);font-family:var(--font-body);margin:0}.lopin-confirm-hold__hint[data-v-6562aac6]{font-size:var(--type-caption-size)}.lopin-confirm-hold__actions[data-v-6562aac6]{display:flex;gap:var(--space-2);justify-content:flex-end}.lopin-confirm-hold__btn[data-v-6562aac6]{border:thin solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);min-height:40px;padding:0 var(--space-3)}.lopin-confirm-hold__btn[data-v-6562aac6]:disabled{cursor:default}.lopin-confirm-hold__btn--cancel[data-v-6562aac6]{background:var(--color-surface-alt);color:var(--color-ink)}.lopin-confirm-hold__btn--confirm[data-v-6562aac6]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface);overflow:hidden;position:relative}.lopin-confirm-hold__fill[data-v-6562aac6]{background:var(--color-primary-strong);bottom:0;left:0;opacity:.45;position:absolute;top:0;transition:width .05s linear}.lopin-confirm-hold__label[data-v-6562aac6]{position:relative;z-index:1}.lopin-icon-button[data-v-48e3181c]{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink-soft);cursor:pointer;display:inline-flex;height:40px;justify-content:center;min-width:40px;padding:0}.lopin-icon-button--danger[data-v-48e3181c]{color:var(--color-earth)}.lopin-icon-button[data-v-48e3181c]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-ink)}.lopin-icon-button.is-disabled[data-v-48e3181c],.lopin-icon-button[data-v-48e3181c]:disabled{cursor:default;opacity:.45}.lopin-month-strip[data-v-9dbdf487]{display:grid;gap:var(--space-1);max-width:100%}.lopin-month-strip__header[data-v-9dbdf487]{align-items:center;display:flex;gap:var(--space-1)}.lopin-month-strip__label[data-v-9dbdf487]{align-items:center;color:var(--color-ink);display:inline-flex;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;gap:var(--space-1)}.lopin-month-strip__incomplete-dot[data-v-9dbdf487]{background:var(--color-warning);border-radius:50%;flex:none;height:6px;width:6px}.lopin-month-strip__row[data-v-9dbdf487]{display:flex;flex-wrap:nowrap;gap:2px}.lopin-month-strip__btn[data-v-9dbdf487]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-ink-soft);cursor:pointer;flex:1 1 0;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;line-height:1;min-height:32px;min-width:0;padding:var(--space-1) 0;transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard)}.lopin-month-strip__btn[data-v-9dbdf487]:hover{border-color:var(--color-primary);color:var(--color-primary-strong)}.lopin-month-strip__btn.is-selected[data-v-9dbdf487]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong)}.lopin-month-strip__btn[data-v-9dbdf487]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.lopin-accordion-section[data-v-5b3a3398]{border-bottom:1px solid var(--color-border)}.lopin-accordion-section[data-v-5b3a3398]:last-child{border-bottom:0}.lopin-accordion-section__trigger[data-v-5b3a3398]{align-items:center;background:transparent;border:0;color:var(--color-ink);cursor:pointer;display:flex;flex-wrap:wrap;font-family:inherit;gap:var(--space-2);justify-content:space-between;padding:var(--space-3) var(--space-4);text-align:left;width:100%}.lopin-accordion-section__trigger[data-v-5b3a3398]:hover{background:var(--color-surface-alt)}.lopin-accordion-section__trigger[data-v-5b3a3398]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.lopin-accordion-section__title-row[data-v-5b3a3398]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-accordion-section__title[data-v-5b3a3398]{color:var(--color-primary-strong);font-family:var(--font-display);font-size:var(--type-small-size);font-weight:700}.lopin-accordion-section__badge[data-v-5b3a3398]{background:var(--color-warning-soft-bg, color-mix(in srgb, var(--color-warning) 14%, var(--color-surface)));border-radius:var(--radius-pill);color:var(--color-warning-text, var(--color-warning));font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;padding:2px var(--space-2)}.lopin-accordion-section__content[data-v-5b3a3398]{overflow:hidden}.lopin-accordion-section__content[data-state=open][data-v-5b3a3398]{animation:lopin-accordion-slide-down-5b3a3398 var(--motion-medium) var(--ease-standard)}.lopin-accordion-section__helper[data-v-5b3a3398]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0 0 var(--space-3);max-width:48ch;padding:0 var(--space-4)}.lopin-accordion-section__grid[data-v-5b3a3398]{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));padding:0 var(--space-4) var(--space-4)}@media(min-width:1100px){.lopin-accordion-section__grid[data-v-5b3a3398]{grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes lopin-accordion-slide-down-5b3a3398{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.lopin-accordion-section__content[data-state=open][data-v-5b3a3398]{animation:none}}.lopin-reason-chip[data-v-57795c2e]{align-items:center;display:inline-flex;gap:var(--space-1)}.lopin-reason-chip__why[data-v-57795c2e]{font-weight:500;opacity:.75}.lopin-reason-chip__remove[data-v-57795c2e]{background:transparent;border:0;color:var(--color-ink-soft);cursor:pointer;font-size:var(--type-small-size);line-height:1;padding:0 var(--space-1)}.lopin-reason-chip__remove[data-v-57795c2e]:hover{color:var(--color-ink)}.lopin-reason-chip__remove[data-v-57795c2e]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.lopin-companion-summary[data-v-d3e47dfc]{background:transparent;border:0;cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;padding:0}.lopin-companion-summary__pos[data-v-d3e47dfc]{color:var(--color-positive-text)}.lopin-companion-summary__neg[data-v-d3e47dfc]{color:var(--color-negative-text)}.lopin-companion-summary__sep[data-v-d3e47dfc]{color:var(--color-ink-soft);margin:0 2px}.lopin-companion-summary[data-v-d3e47dfc]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.lopin-companion-summary__popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);max-width:28ch;padding:var(--space-2) var(--space-3);z-index:100}.lopin-companion-summary__list{display:grid;gap:var(--space-1);list-style:none;margin:0;padding:0}.lopin-companion-summary__item{font-family:var(--font-body);font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.lopin-companion-summary__item--pos{color:var(--color-positive-text)}.lopin-companion-summary__item--neg{color:var(--color-negative-text)}.lopin-add-association[data-v-e760adf9]{align-items:center;background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-ink-soft);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-small-size);gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:border-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard)}.lopin-add-association[data-v-e760adf9]:hover{border-color:var(--color-primary);color:var(--color-primary-strong)}.lopin-add-association[data-v-e760adf9]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lopin-add-association__popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:grid;gap:var(--space-3);min-width:16rem;padding:var(--space-3);z-index:100}.lopin-add-association__title{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-small-size);font-weight:600;margin:0}.lopin-add-association__fields{display:grid;gap:var(--space-2)}.lopin-add-association__field{display:grid;gap:var(--space-1)}.lopin-add-association__field span{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600}.lopin-add-association__field select,.lopin-add-association__field input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);min-height:36px;padding:0 var(--space-2)}.lopin-add-association__actions{display:flex;gap:var(--space-2);justify-content:flex-end}.lopin-compact-plant-card[data-v-4014e9e3]{background:var(--color-surface);border:thin solid var(--color-border-strong, var(--color-border));border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:grid;grid-template-rows:auto 1fr;outline:none;overflow:hidden;transition:box-shadow var(--motion-medium) var(--ease-standard),transform var(--motion-medium) cubic-bezier(.34,1.25,.64,1)}.lopin-compact-plant-card[data-v-4014e9e3]:focus-visible{box-shadow:0 0 0 3px var(--color-primary-soft)}.lopin-compact-plant-card[data-v-4014e9e3]:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.lopin-compact-plant-card--intro[data-v-4014e9e3]{animation:lopin-compact-plant-card-enter-4014e9e3 var(--motion-medium) var(--ease-enter) backwards}.lopin-compact-plant-card--clickable[data-v-4014e9e3]{cursor:pointer}.lopin-compact-plant-card__accent[data-v-4014e9e3]{height:3px;width:100%}.lopin-compact-plant-card__hero[data-v-4014e9e3]{aspect-ratio:3 / 2;overflow:hidden;position:relative;width:100%}.lopin-compact-plant-card__photo[data-v-4014e9e3]{display:block;height:100%;object-fit:cover;transition:transform var(--motion-medium) var(--ease-standard);width:100%}.lopin-compact-plant-card:hover .lopin-compact-plant-card__photo[data-v-4014e9e3]{transform:scale(1.03)}.lopin-compact-plant-card__photo-fallback[data-v-4014e9e3]{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.lopin-compact-plant-card__glyph[data-v-4014e9e3]{font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:700;line-height:1}.lopin-compact-plant-card__status[data-v-4014e9e3]{backdrop-filter:blur(4px);background:color-mix(in srgb,var(--color-surface) 92%,transparent);border-radius:var(--radius-pill);color:var(--color-ink-soft);font-family:var(--font-body);font-size:10px;font-weight:600;padding:2px var(--space-2);position:absolute;right:var(--space-1);top:var(--space-1)}.lopin-compact-plant-card__status.is-owned[data-v-4014e9e3]{color:var(--color-primary-strong)}.lopin-compact-plant-card__status.is-wish[data-v-4014e9e3]{color:var(--color-ai)}.lopin-compact-plant-card__body[data-v-4014e9e3]{display:grid;gap:var(--space-1);padding:var(--space-2) var(--space-3) var(--space-3)}.lopin-compact-plant-card__title[data-v-4014e9e3]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600;line-height:var(--type-small-line);margin:0}.lopin-compact-plant-card__meta[data-v-4014e9e3]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:11px;margin:0}@keyframes lopin-compact-plant-card-enter-4014e9e3{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.lopin-compact-plant-card[data-v-4014e9e3]{transition:none}.lopin-compact-plant-card[data-v-4014e9e3]:hover{transform:none}.lopin-compact-plant-card__photo[data-v-4014e9e3]{transition:none}.lopin-compact-plant-card:hover .lopin-compact-plant-card__photo[data-v-4014e9e3]{transform:none}.lopin-compact-plant-card--intro[data-v-4014e9e3]{animation:none}}.lopin-tag-input[data-v-f88545ad]{display:grid;gap:var(--space-2);max-width:36ch;width:100%}.lopin-tag-input__label[data-v-f88545ad]{color:var(--color-ink);font-size:var(--type-small-size);font-weight:600}.lopin-tag-input__box[data-v-f88545ad]{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:text;display:flex;flex-wrap:wrap;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3)}.lopin-tag-input__chip[data-v-f88545ad]{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink);display:inline-flex;font-size:var(--type-caption-size);font-weight:600;gap:var(--space-1);padding:0 var(--space-2)}.lopin-tag-input__remove[data-v-f88545ad]{background:none;border:none;color:var(--color-ink-soft);cursor:pointer;font:inherit;line-height:1;padding:0}.lopin-tag-input__field[data-v-f88545ad]{background:transparent;border:none;color:var(--color-ink);flex:1 1 8ch;font:inherit;min-width:8ch;outline:none;padding:0}.lopin-square-photo-crop[data-v-68ec0483]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-4)}.lopin-square-photo-crop__viewport[data-v-68ec0483]{aspect-ratio:1;background:var(--color-bg);border-radius:var(--radius-md);margin:0 auto;max-width:320px;overflow:hidden;position:relative;width:100%}.lopin-square-photo-crop__image[data-v-68ec0483]{height:100%;left:0;object-fit:contain;position:absolute;top:0;transform-origin:center center;width:100%}.lopin-square-photo-crop__mask[data-v-68ec0483]{border:2px solid var(--color-primary);box-shadow:0 0 0 9999px color-mix(in srgb,var(--color-ink) 40%,transparent);inset:0;pointer-events:none;position:absolute}.lopin-square-photo-crop__zoom[data-v-68ec0483]{align-items:center;display:flex;gap:var(--space-3);justify-content:center}.lopin-square-photo-crop__actions[data-v-68ec0483]{display:flex;gap:var(--space-2);justify-content:flex-end}.lopin-skeleton[data-v-ba50061f]{display:grid;gap:var(--space-2)}.lopin-skeleton__line[data-v-ba50061f]{background:linear-gradient(90deg,var(--color-surface-alt) 0%,var(--color-surface) 45%,var(--color-surface-alt) 90%);background-size:200% 100%;border-radius:var(--radius-sm);display:block;height:14px}.lopin-ai-working[data-v-2a2ec465]{align-items:center;background:color-mix(in srgb,var(--color-ai-soft-bg, var(--color-surface-alt)) 72%,transparent);border:thin dashed var(--color-ai);border-radius:var(--radius-md);display:grid;gap:var(--space-2);justify-items:center;padding:var(--space-4);text-align:center}.lopin-ai-working__orb[data-v-2a2ec465]{display:grid;height:40px;place-items:center;position:relative;width:40px}.lopin-ai-working__pulse[data-v-2a2ec465],.lopin-ai-working__core[data-v-2a2ec465]{border-radius:50%;grid-area:1 / 1;position:absolute}.lopin-ai-working__pulse[data-v-2a2ec465]{background:color-mix(in srgb,var(--color-ai) 24%,transparent);height:40px;width:40px}.lopin-ai-working__core[data-v-2a2ec465]{border:2px solid var(--color-ai);border-top-color:transparent;height:22px;width:22px}.lopin-ai-working__label[data-v-2a2ec465]{color:var(--color-ink);font-size:var(--type-small-size);font-weight:600;margin:0}.lopin-ai-working__detail[data-v-2a2ec465]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0;max-width:28ch}.lopin-audit-accept-check[data-v-7cbda796]{align-items:center;animation:lopin-audit-check-fade-7cbda796 1s ease forwards;background:var(--color-positive, #2f6b4f);border-radius:50%;color:#fff;display:inline-flex;font-size:14px;font-weight:700;height:26px;justify-content:center;pointer-events:none;position:absolute;right:var(--space-2);top:var(--space-2);width:26px;z-index:2}@keyframes lopin-audit-check-fade-7cbda796{0%{opacity:0;transform:scale(.55)}18%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.92)}}.lopin-plant-catalog[data-v-679b97b3]{display:grid;gap:var(--space-4)}.lopin-plant-catalog__toolbar[data-v-679b97b3]{align-items:end;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between}.lopin-plant-catalog__actions[data-v-679b97b3]{align-items:end;display:flex;flex-wrap:wrap;gap:var(--space-3)}.lopin-plant-catalog__search[data-v-679b97b3]{display:grid;gap:var(--space-1);min-width:220px}.lopin-plant-catalog__search-label[data-v-679b97b3]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600}.lopin-plant-catalog__search input[data-v-679b97b3]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);max-width:36ch;min-height:40px;padding:0 var(--space-3)}.lopin-plant-catalog__filters[data-v-679b97b3]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-plant-catalog__filter[data-v-679b97b3],.lopin-plant-catalog__sort[data-v-679b97b3]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);padding:var(--space-1) var(--space-3)}.lopin-plant-catalog__view-toggle[data-v-679b97b3]{display:inline-flex;gap:var(--space-1)}.lopin-plant-catalog__view-btn[data-v-679b97b3]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);min-height:32px;padding:0 var(--space-3)}.lopin-plant-catalog__view-btn.is-active[data-v-679b97b3]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong);font-weight:600}.lopin-plant-catalog__grid[data-v-679b97b3],.lopin-plant-catalog__loading-grid[data-v-679b97b3]{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.lopin-plant-catalog__skeleton-card[data-v-679b97b3]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:grid;gap:var(--space-3);overflow:hidden;padding:0 0 var(--space-3)}.lopin-plant-catalog__skeleton-accent[data-v-679b97b3]{background:var(--color-surface-alt);height:3px}.lopin-plant-catalog__skeleton-hero[data-v-679b97b3]{aspect-ratio:3 / 2;margin:0 var(--space-3)}.lopin-plant-catalog__skeleton-shimmer[data-v-679b97b3]{animation:lopin-plant-catalog-shimmer-679b97b3 1.4s linear infinite;background:linear-gradient(90deg,var(--color-surface-alt) 0%,var(--color-surface) 45%,var(--color-surface-alt) 90%);background-size:200% 100%;border-radius:var(--radius-md);height:100%;width:100%}@keyframes lopin-plant-catalog-shimmer-679b97b3{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.lopin-plant-catalog__skeleton-shimmer[data-v-679b97b3]{animation:none}}.lopin-plant-catalog__skeleton-card[data-v-679b97b3] .lopin-skeleton{padding:0 var(--space-3)}.lopin-plant-catalog__table-wrap[data-v-679b97b3]{overflow:auto}.lopin-plant-catalog__table[data-v-679b97b3]{border-collapse:collapse;font-family:var(--font-body);font-size:var(--type-small-size);width:100%}.lopin-plant-catalog__table th[data-v-679b97b3]{border-bottom:1px solid var(--color-border);color:var(--color-ink-soft);font-weight:600;padding:var(--space-2) var(--space-3);text-align:left}.lopin-plant-catalog__row--clickable[data-v-679b97b3]{cursor:pointer}.lopin-plant-catalog__row[data-v-679b97b3]{transition:background-color var(--motion-micro) var(--ease-standard)}.lopin-plant-catalog__row[data-v-679b97b3]:hover{background:var(--color-surface-alt)}.lopin-plant-catalog__table td[data-v-679b97b3]{border-bottom:1px solid var(--color-border);padding:var(--space-3);vertical-align:top}.lopin-plant-catalog__name[data-v-679b97b3]{color:var(--color-ink);font-weight:600}.lopin-plant-catalog__name-cell[data-v-679b97b3]{align-items:center;display:flex;gap:var(--space-2)}.lopin-plant-catalog__latin[data-v-679b97b3]{color:var(--color-ink-soft);display:block;font-family:var(--font-body);font-size:var(--type-caption-size);font-style:italic;font-weight:400}.lopin-plant-catalog__thumb[data-v-679b97b3]{border:thin solid var(--color-border);border-radius:var(--radius-sm);flex:none;height:30px;object-fit:cover;width:30px}.lopin-plant-catalog__thumb-fallback[data-v-679b97b3]{align-items:center;background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-sm);display:flex;flex:none;font-family:var(--font-display);font-size:var(--type-caption-size);font-weight:700;height:30px;justify-content:center;width:30px}.lopin-plant-catalog__sort-header[data-v-679b97b3]{background:transparent;border:0;color:inherit;cursor:pointer;font:inherit;font-weight:600;padding:0;text-align:left}.lopin-plant-catalog__sort-header.is-active[data-v-679b97b3]{color:var(--color-primary-strong)}.lopin-plant-catalog__sort-header[data-v-679b97b3]:hover{color:var(--color-primary)}.lopin-plant-catalog__sort-header[data-v-679b97b3]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lopin-plant-catalog__companions[data-v-679b97b3]{display:flex;flex-wrap:wrap;gap:var(--space-1)}.lopin-plant-catalog__status[data-v-679b97b3]{background:var(--color-primary-soft);border-radius:var(--radius-pill);color:var(--color-primary-strong);font-size:var(--type-caption-size);padding:0 var(--space-2)}.lopin-plant-catalog__status--calm[data-v-679b97b3]{background:var(--color-surface-alt);color:var(--color-ink-soft)}.lopin-plant-catalog__status--owned[data-v-679b97b3]{background:var(--color-primary-soft);color:var(--color-primary-strong)}.lopin-plant-catalog__status--wish[data-v-679b97b3]{background:var(--color-ai-soft-bg);color:var(--color-ai)}.lopin-plant-catalog__no-result[data-v-679b97b3]{background:var(--color-surface-alt);border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);text-align:center}.lopin-plant-catalog__no-result-title[data-v-679b97b3]{font-family:var(--font-display);font-size:var(--type-h2-size);margin:0 0 var(--space-2)}.lopin-plant-catalog__no-result-detail[data-v-679b97b3]{color:var(--color-ink-soft);margin:0}.lopin-plant-identity[data-v-e624b6bf]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:grid;gap:var(--space-4);padding:var(--space-4)}.lopin-plant-identity__photo[data-v-e624b6bf]{aspect-ratio:1;background:var(--color-surface-alt);border-radius:var(--radius-md);overflow:hidden;width:100%}.lopin-plant-identity__photo img[data-v-e624b6bf]{display:block;height:100%;object-fit:cover;width:100%}.lopin-plant-identity__glyph[data-v-e624b6bf]{align-items:center;color:var(--color-primary);display:flex;font-family:var(--font-display);font-size:calc(var(--type-h2-size) * 2);font-weight:700;height:100%;justify-content:center}.lopin-plant-identity__photo-actions[data-v-e624b6bf]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-plant-identity__common[data-v-e624b6bf]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-plant-identity__latin[data-v-e624b6bf]{color:var(--color-ink-soft);font-size:var(--type-small-size);font-style:italic;margin:var(--space-1) 0 0}.lopin-plant-identity__variety[data-v-e624b6bf]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:var(--space-1) 0 0}.lopin-plant-identity__facts[data-v-e624b6bf]{display:grid;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.lopin-plant-identity__facts div[data-v-e624b6bf]{display:grid;gap:var(--space-1)}.lopin-plant-identity__facts dt[data-v-e624b6bf]{color:var(--color-ink-muted);font-size:var(--type-caption-size);font-weight:600}.lopin-plant-identity__facts dd[data-v-e624b6bf]{color:var(--color-ink);font-size:var(--type-small-size);margin:0}.lopin-plant-identity__footer[data-v-e624b6bf]{border-top:thin solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-3)}.lopin-plant-audit[data-v-08c8f1ad]{background:var(--color-surface);border:thin dashed var(--color-ai);border-radius:var(--radius-md);display:grid;gap:var(--space-3);padding:var(--space-4)}.lopin-plant-audit__title[data-v-08c8f1ad]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-small-size);font-weight:700;margin:0}.lopin-plant-audit__lead[data-v-08c8f1ad]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:var(--space-1) 0 0}.lopin-plant-audit__source-mode[data-v-08c8f1ad]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-plant-audit__mode-btn[data-v-08c8f1ad]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-muted);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;padding:var(--space-1) var(--space-3)}.lopin-plant-audit__mode-btn.is-active[data-v-08c8f1ad]{background:var(--color-ai-soft-bg, var(--color-primary-soft));border-color:var(--color-ai);color:var(--color-ai)}.lopin-plant-audit__source[data-v-08c8f1ad]{display:grid;gap:var(--space-2)}.lopin-plant-audit__textarea[data-v-08c8f1ad],.lopin-plant-audit__file[data-v-08c8f1ad]{color:var(--color-ink-soft);display:grid;font-size:var(--type-caption-size);gap:var(--space-1)}.lopin-plant-audit__textarea textarea[data-v-08c8f1ad]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-caption-size);line-height:1.4;padding:var(--space-2);resize:vertical}.lopin-plant-audit__file-name[data-v-08c8f1ad]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:0}.lopin-plant-audit__error[data-v-08c8f1ad]{color:var(--color-negative-text);font-size:var(--type-caption-size);margin:0}.lopin-plant-audit__list[data-v-08c8f1ad]{display:grid;gap:var(--space-3);list-style:none;margin:0;padding:0}.lopin-plant-audit__item[data-v-08c8f1ad]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-2);padding:var(--space-3)}.lopin-plant-audit__item-head[data-v-08c8f1ad]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between}.lopin-plant-audit__field[data-v-08c8f1ad]{color:var(--color-ink);font-size:var(--type-small-size);font-weight:600}.lopin-plant-audit__issue[data-v-08c8f1ad]{background:var(--color-ai-soft, var(--color-primary-soft));border-radius:var(--radius-pill);color:var(--color-ai);font-size:var(--type-caption-size);font-weight:600;padding:0 var(--space-2)}.lopin-plant-audit__current[data-v-08c8f1ad],.lopin-plant-audit__suggested[data-v-08c8f1ad],.lopin-plant-audit__source[data-v-08c8f1ad]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.lopin-plant-audit__actions[data-v-08c8f1ad]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-plant-audit__empty[data-v-08c8f1ad]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:0}.lopin-plant-audit__debug[data-v-08c8f1ad]{border-top:thin solid var(--color-border);margin-top:var(--space-1);padding-top:var(--space-2)}.lopin-plant-audit__debug-summary[data-v-08c8f1ad]{color:var(--color-ink-muted);cursor:pointer;font-size:var(--type-caption-size);font-weight:600}.lopin-plant-audit__debug-meta[data-v-08c8f1ad]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:var(--space-2) 0 0}.lopin-plant-audit__debug-block[data-v-08c8f1ad]{display:grid;gap:var(--space-1);margin-top:var(--space-3)}.lopin-plant-audit__debug-heading[data-v-08c8f1ad]{color:var(--color-ink-soft);font-size:var(--type-caption-size);font-weight:600;margin:0}.lopin-plant-audit__debug-pre[data-v-08c8f1ad]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.45;margin:0;max-height:240px;overflow:auto;padding:var(--space-2);white-space:pre-wrap;word-break:break-word}.lopin-zone-block[data-v-caec3616]{align-items:center;background:color-mix(in srgb,var(--color-earth) 18%,var(--color-surface));border:1px solid var(--color-earth);border-radius:var(--radius-sm);display:grid;gap:var(--space-1);justify-items:center;min-height:0;min-width:0;padding:var(--space-1);position:relative;z-index:1}.lopin-zone-block--empty[data-v-caec3616]{background:var(--color-surface-alt);border-color:var(--color-border);border-style:dashed}.lopin-zone-block--suggested[data-v-caec3616]{background:var(--color-ai-soft-bg);border-color:var(--color-ai);border-style:dashed}.lopin-zone-block__glyph[data-v-caec3616]{color:var(--color-primary-strong);font-family:var(--font-display);font-size:var(--type-small-size);font-weight:700;line-height:1}.lopin-zone-block__label[data-v-caec3616]{display:grid;gap:var(--space-1);text-align:center}.lopin-zone-block__crop[data-v-caec3616]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:700}.lopin-zone-block__name[data-v-caec3616]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size)}.lopin-bed-tile[data-v-21bda67e]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-2);max-width:220px;padding:var(--space-3);transition:border-color var(--motion-micro) var(--ease-standard)}.lopin-bed-tile.is-highlighted[data-v-21bda67e]{border-color:var(--color-primary)}.lopin-bed-tile.is-glowing[data-v-21bda67e]{border-color:var(--color-sun)}.lopin-bed-tile__meta[data-v-21bda67e]{display:grid;gap:var(--space-1)}.lopin-bed-tile__name[data-v-21bda67e]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size)}.lopin-bed-tile__occupant[data-v-21bda67e]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size)}.lopin-bed-tile__canvas[data-v-21bda67e]{background:color-mix(in srgb,var(--color-earth) 14%,var(--color-surface-alt));border:1px solid var(--color-border);border-radius:var(--radius-sm);display:grid;grid-template-columns:repeat(var(--bed-cols),1fr);grid-template-rows:repeat(var(--bed-rows),1fr);min-height:80px;overflow:hidden;position:relative;width:100%}.lopin-bed-tile.is-empty .lopin-bed-tile__canvas[data-v-21bda67e]{background:var(--color-surface-alt);border-style:dashed}.lopin-bed-tile__grid-line[data-v-21bda67e]{pointer-events:none;z-index:0}.lopin-garden-preview[data-v-db139fe8]{display:grid;gap:var(--space-3)}.lopin-garden-preview__note[data-v-db139fe8]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);margin:0}.lopin-garden-preview__grid[data-v-db139fe8]{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.lopin-garden-map__bed-chip[data-v-2008ed88]{cursor:pointer;pointer-events:auto}.lopin-garden-map__bed-chip.is-draggable[data-v-2008ed88]{cursor:grab}.lopin-garden-map__bed-chip.is-draggable[data-v-2008ed88]:active{cursor:grabbing}.lopin-garden-map__bed-chip.is-pass-through[data-v-2008ed88]{pointer-events:none}.lopin-garden-map__bed-chip-bg[data-v-2008ed88]{fill:var(--color-surface);stroke:var(--color-border);stroke-width:1;vector-effect:non-scaling-stroke}.lopin-garden-map__bed-chip-bg.is-selected[data-v-2008ed88]{stroke:var(--color-primary)}.lopin-garden-map__bed-chip-grip[data-v-2008ed88]{fill:var(--color-ink-soft);pointer-events:none}.lopin-garden-map__bed-chip-text[data-v-2008ed88]{dominant-baseline:central;fill:var(--color-ink);font-family:var(--font-body);font-weight:600;pointer-events:none;text-anchor:middle}.lopin-garden-map__bed-chip-text.is-selected[data-v-2008ed88]{fill:var(--color-primary-strong)}.lopin-garden-map__bed-chip-lock[data-v-2008ed88]{cursor:pointer}.lopin-garden-map__bed-chip-lock-path[data-v-2008ed88]{fill:var(--color-ink-soft)}.lopin-garden-map__bed-chip-lock.is-locked .lopin-garden-map__bed-chip-lock-path[data-v-2008ed88]{fill:var(--color-primary)}.lopin-garden-map__zone-content[data-v-764ba734]{pointer-events:none}.lopin-garden-map__zone-photo-frame[data-v-764ba734]{fill:var(--color-surface);stroke:var(--color-border);stroke-width:1;vector-effect:non-scaling-stroke}.lopin-garden-map__zone-photo-image[data-v-764ba734],.lopin-garden-map__zone-photo-icon[data-v-764ba734]{pointer-events:none}.lopin-garden-map__zone-content-text[data-v-764ba734]{fill:var(--color-ink);font-family:var(--font-body);font-weight:500}.lopin-garden-map__zone-content-period[data-v-764ba734]{fill:var(--color-ink-soft);font-family:var(--font-body);font-weight:500}.lopin-garden-map__zone-dot[data-v-be99484f]{pointer-events:none}.lopin-garden-map[data-v-cb6c99fe]{border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-1);overflow:hidden;width:100%}.lopin-garden-map__legend[data-v-cb6c99fe]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0;padding:var(--space-2) var(--space-3) 0}.lopin-garden-map__svg[data-v-cb6c99fe]{display:block;max-width:100%;min-height:280px;touch-action:none;user-select:none;width:100%}.lopin-garden-map__minor-line[data-v-cb6c99fe]{opacity:.06;stroke:var(--color-border);stroke-width:1;vector-effect:non-scaling-stroke}.lopin-garden-map__tint[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-earth) 8%,var(--color-surface-alt));opacity:.35}.lopin-garden-map__major-line[data-v-cb6c99fe]{opacity:.12;stroke:var(--color-border);stroke-width:1;vector-effect:non-scaling-stroke}.lopin-garden-map__svg.is-draw-bed[data-v-cb6c99fe],.lopin-garden-map__svg.is-draw-zone[data-v-cb6c99fe]{cursor:crosshair}.lopin-garden-map__guide-line[data-v-cb6c99fe]{pointer-events:none;stroke:var(--guide);stroke-dasharray:6 4;stroke-width:1.5;vector-effect:non-scaling-stroke}.lopin-garden-map__guide-line.is-spacing[data-v-cb6c99fe]{stroke-dasharray:3 3;stroke-width:1}.lopin-garden-map__dim-line[data-v-cb6c99fe]{pointer-events:none;stroke:var(--dim-ink);stroke-dasharray:4 3;stroke-width:1;vector-effect:non-scaling-stroke}.lopin-garden-map__dim-label[data-v-cb6c99fe]{dominant-baseline:central;fill:var(--dim-ink);font-family:var(--font-body);font-size:var(--gap-dim-label-size, 8px);pointer-events:none;text-anchor:middle}.lopin-garden-map__bed-focus-ring[data-v-cb6c99fe]{fill:none;pointer-events:none;stroke:color-mix(in srgb,var(--color-primary) 35%,transparent);stroke-width:3;vector-effect:non-scaling-stroke}.lopin-garden-map__bed-zebra-a[data-v-cb6c99fe]{fill:var(--bed-fill)}.lopin-garden-map__bed-zebra-b[data-v-cb6c99fe]{fill:var(--bed-fill-stripe)}.lopin-garden-map__bed-shape[data-v-cb6c99fe]{cursor:grab;stroke:var(--color-primary);stroke-width:var(--bed-stroke);vector-effect:non-scaling-stroke}.lopin-garden-map__bed-shape.is-selected[data-v-cb6c99fe]{stroke:var(--color-primary);stroke-width:var(--bed-stroke)}.lopin-garden-map__bed-shape.is-glowing[data-v-cb6c99fe]{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--color-sun) 55%,transparent));stroke:var(--color-sun)}.lopin-garden-map__bed-shape.is-moving[data-v-cb6c99fe]{fill:var(--color-primary-soft)}.lopin-garden-map__bed-frame-hit[data-v-cb6c99fe]{pointer-events:none;stroke:transparent;stroke-width:12;vector-effect:non-scaling-stroke}.lopin-garden-map__zone-shape.is-selected[data-v-cb6c99fe]{cursor:grab}.lopin-garden-map__zone-shape.is-selected.is-moving[data-v-cb6c99fe]{cursor:grabbing}.lopin-garden-map__bed-occupant[data-v-cb6c99fe]{fill:var(--color-ink-soft);font-family:var(--font-body);font-size:11px;pointer-events:none}.lopin-garden-map__zone-shape[data-v-cb6c99fe]{cursor:pointer;fill:var(--zone-fill, var(--zone-fill-1));stroke:var(--color-primary-strong);stroke-width:var(--zone-stroke);vector-effect:non-scaling-stroke}.lopin-garden-map__zone-shape.is-selected[data-v-cb6c99fe]{stroke:var(--color-primary);stroke-width:2}.lopin-garden-map__zone-shape.is-selected.is-invalid[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-negative) 12%,transparent);stroke:var(--color-negative)}.lopin-garden-map__zone-shape.is-alt.is-selected[data-v-cb6c99fe]{stroke:var(--color-primary)}.lopin-garden-map__zone-shape.is-glowing[data-v-cb6c99fe]{filter:drop-shadow(0 0 5px color-mix(in srgb,var(--color-sun) 50%,transparent));stroke:var(--color-sun)}.lopin-garden-map__handle-hit[data-v-cb6c99fe]{cursor:nwse-resize;fill:transparent;stroke:none}.lopin-garden-map__handle[data-v-cb6c99fe]{fill:var(--color-surface);pointer-events:none;stroke:var(--color-primary-strong);stroke-width:1;vector-effect:non-scaling-stroke}.lopin-garden-map__draft[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-primary) 18%,transparent);stroke:var(--color-primary);stroke-dasharray:4 3;stroke-width:var(--bed-stroke);vector-effect:non-scaling-stroke}.lopin-garden-map__eligible-line[data-v-cb6c99fe]{pointer-events:none;stroke:var(--color-positive);stroke-width:2;vector-effect:non-scaling-stroke}.lopin-garden-map__ghost-point-group[data-v-cb6c99fe]{pointer-events:none}.lopin-garden-map__ghost-point[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-positive) 28%,transparent);stroke:var(--color-positive);stroke-width:2;vector-effect:non-scaling-stroke}.lopin-garden-map__ghost-point.is-invalid[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-negative) 24%,transparent);stroke:var(--color-negative)}.lopin-garden-map__zone-draft.is-valid[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-positive) 14%,transparent);stroke:var(--color-positive)}.lopin-garden-map__draft--ghost[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-primary) 10%,transparent);pointer-events:none;stroke-dasharray:2 2}.lopin-garden-map__draft--ghost.lopin-garden-map__zone-draft[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-primary) 18%,transparent);stroke:var(--color-primary);stroke-dasharray:4 3;stroke-width:var(--zone-stroke)}.lopin-garden-map__draft--ghost.lopin-garden-map__zone-draft.is-invalid[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-negative) 12%,transparent);stroke:var(--color-negative)}.lopin-garden-map__live-size-label[data-v-cb6c99fe]{pointer-events:none}.lopin-garden-map__draft-label[data-v-cb6c99fe]{dominant-baseline:central;fill:var(--color-primary-strong);font-family:var(--font-body);font-size:var(--type-caption-size);font-variant-numeric:tabular-nums;font-weight:600;pointer-events:none;text-anchor:middle}.lopin-garden-map__zone-draft[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-primary) 18%,transparent);pointer-events:none;stroke:var(--color-primary);stroke-dasharray:4 3;stroke-width:var(--zone-stroke);vector-effect:non-scaling-stroke}.lopin-garden-map__zone-draft.is-invalid[data-v-cb6c99fe]{fill:color-mix(in srgb,var(--color-negative) 12%,transparent);stroke:var(--color-negative)}.lopin-garden-map__calibration-line[data-v-cb6c99fe]{stroke:var(--color-sun);stroke-width:3;vector-effect:non-scaling-stroke}.lopin-garden-map__scale-bar-line[data-v-cb6c99fe]{stroke:var(--color-ink-soft);stroke-width:2;vector-effect:non-scaling-stroke}.lopin-garden-map__scale-bar-label[data-v-cb6c99fe]{fill:var(--color-ink-soft);font-family:var(--font-body);font-size:10px;text-anchor:middle}.lopin-garden-map__zone-alert[data-v-cb6c99fe]{pointer-events:none}.lopin-garden-map__zone-alert-dot[data-v-cb6c99fe]{stroke:var(--color-surface);stroke-width:1.5;vector-effect:non-scaling-stroke}.lopin-garden-map__zone-alert.is-negative .lopin-garden-map__zone-alert-dot[data-v-cb6c99fe]{fill:var(--color-negative)}.lopin-garden-map__zone-alert.is-sun .lopin-garden-map__zone-alert-dot[data-v-cb6c99fe]{fill:var(--color-sun)}.lopin-garden-map-toolbar[data-v-3490b7be]{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.lopin-garden-map-toolbar__group[data-v-3490b7be]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-garden-map-toolbar__tool[data-v-3490b7be]{align-items:center;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-small-size);gap:var(--space-2);line-height:var(--type-small-line);padding:var(--space-2) var(--space-3);transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard),color var(--motion-micro) var(--ease-standard)}.lopin-garden-map-toolbar__tool[data-v-3490b7be]:hover:not(:disabled){background:var(--color-surface-alt)}.lopin-garden-map-toolbar__tool.is-active[data-v-3490b7be]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong);font-weight:500}.lopin-garden-map-toolbar__tool[data-v-3490b7be]:disabled{color:var(--color-ink-soft);cursor:not-allowed;opacity:.6}.lopin-garden-map-toolbar__kbd[data-v-3490b7be]{color:var(--color-ink-soft);font-size:10px;font-variant-numeric:tabular-nums;line-height:1;margin-left:calc(var(--space-1) * -1)}.lopin-garden-map-toolbar__plan[data-v-3490b7be]{padding-right:var(--space-2)}.lopin-garden-map-toolbar__chevron[data-v-3490b7be]{color:color-mix(in srgb,var(--color-ink-soft) 72%,var(--color-surface))}.lopin-garden-map-toolbar__sep[data-v-3490b7be]{background:var(--color-border);flex-shrink:0;height:1.375rem;width:1px}.lopin-garden-map-toolbar__zoom[data-v-3490b7be]{align-items:stretch;border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.lopin-garden-map-toolbar__zoom-btn[data-v-3490b7be]{align-items:center;background:transparent;border:0;color:var(--color-ink);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-small-size);justify-content:center;min-width:2.25rem;padding:var(--space-2) var(--space-3)}.lopin-garden-map-toolbar__zoom-btn+.lopin-garden-map-toolbar__zoom-btn[data-v-3490b7be],.lopin-garden-map-toolbar__zoom-value+.lopin-garden-map-toolbar__zoom-btn[data-v-3490b7be]{border-left:1px solid var(--color-border)}.lopin-garden-map-toolbar__zoom-value[data-v-3490b7be]{align-items:center;color:var(--color-ink-soft);display:inline-flex;font-size:var(--type-small-size);font-variant-numeric:tabular-nums;justify-content:center;min-width:3.5rem;padding:0 var(--space-2)}.lopin-garden-map-toolbar__zoom-btn--fit[data-v-3490b7be]{padding:var(--space-2)}.lopin-garden-map-toolbar__spacer[data-v-3490b7be]{flex:1;min-width:var(--space-2)}.lopin-garden-map-toolbar__right[data-v-3490b7be]{align-items:center;display:inline-flex;flex-wrap:wrap;gap:var(--space-3);justify-content:flex-end;min-width:0}.lopin-garden-map-toolbar__context[data-v-3490b7be]{color:var(--color-ink-soft);font-size:var(--type-caption-size);max-width:18rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lopin-garden-map-toolbar__mesh[data-v-3490b7be]{align-items:center;color:color-mix(in srgb,var(--color-ink-soft) 72%,var(--color-surface));display:inline-flex;font-size:var(--type-caption-size);gap:var(--space-1);white-space:nowrap}.lopin-garden-map-toolbar__menu[data-v-3490b7be]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:grid;min-width:10rem;overflow:hidden;padding:var(--space-1);z-index:40}.lopin-garden-map-toolbar__menu-item[data-v-3490b7be]{background:transparent;border:0;border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--type-small-size);padding:var(--space-2) var(--space-3);text-align:left;width:100%}.lopin-garden-map-toolbar__menu-item[data-v-3490b7be]:hover,.lopin-garden-map-toolbar__menu-item[data-v-3490b7be]:focus-visible{background:var(--color-surface-alt);outline:none}.lopin-garden-spaces-rail[data-v-e3da5314]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:var(--space-2);max-height:100%;min-height:0;min-width:0;overflow:hidden auto;padding:var(--space-2);width:var(--garden-rail-width, 120px)}.lopin-garden-spaces-rail__head[data-v-e3da5314]{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;min-width:0}.lopin-garden-spaces-rail__menu-trigger[data-v-e3da5314]{align-items:center;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-ink-soft);cursor:pointer;display:inline-flex;flex-shrink:0;height:1.75rem;justify-content:center;padding:0;width:1.75rem}.lopin-garden-spaces-rail__menu-trigger[data-v-e3da5314]:hover{background:var(--color-surface-alt);color:var(--color-ink)}.lopin-garden-spaces-rail__menu-trigger[data-v-e3da5314]:focus-visible{background:var(--color-surface-alt);color:var(--color-ink);outline:2px solid var(--color-primary);outline-offset:2px}.lopin-garden-spaces-rail__title[data-v-e3da5314]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lopin-garden-spaces-rail__list[data-v-e3da5314]{display:grid;gap:var(--space-1);list-style:none;margin:0;min-width:0;padding:0}.lopin-garden-spaces-rail__space[data-v-e3da5314]{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-ink);cursor:pointer;display:grid;gap:2px;min-width:0;padding:var(--space-2);text-align:left;width:100%}.lopin-garden-spaces-rail__space[data-v-e3da5314]:hover:not(.is-active){background:var(--color-surface-alt)}.lopin-garden-spaces-rail__space.is-active[data-v-e3da5314]{background:var(--color-primary-soft);border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary-soft);color:var(--color-primary-strong)}.lopin-garden-spaces-rail__space.is-active small[data-v-e3da5314]{color:var(--color-primary-strong)}.lopin-garden-spaces-rail__space-name[data-v-e3da5314]{font-size:var(--type-caption-size);font-weight:500;line-height:var(--type-caption-line);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lopin-garden-spaces-rail__space.is-active .lopin-garden-spaces-rail__space-name[data-v-e3da5314]{font-weight:600}.lopin-garden-spaces-rail__space small[data-v-e3da5314]{color:var(--color-ink-soft);font-size:10px;line-height:1.2}.lopin-garden-spaces-rail__sheet[data-v-e3da5314]{display:grid;gap:var(--space-3);max-width:100%}.lopin-garden-spaces-rail__sheet[data-v-e3da5314] .lopin-field{max-width:none}.lopin-garden-spaces-rail__sheet-actions[data-v-e3da5314]{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.lopin-garden-spaces-rail__type-label[data-v-e3da5314]{color:var(--color-ink-soft);display:grid;font-size:var(--type-caption-size);gap:var(--space-1)}.lopin-garden-spaces-rail__type-select[data-v-e3da5314]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);max-width:100%;padding:var(--space-2) var(--space-3);width:100%}.lopin-garden-spaces-rail__menu[data-v-e3da5314]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:grid;min-width:9rem;overflow:hidden;padding:var(--space-1);z-index:40}.lopin-garden-spaces-rail__menu-sep[data-v-e3da5314]{background:var(--color-border);height:1px;margin:var(--space-1) 0}.lopin-garden-spaces-rail__menu-item[data-v-e3da5314]{background:transparent;border:0;border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);padding:var(--space-2) var(--space-3);text-align:left;width:100%}.lopin-garden-spaces-rail__menu-item[data-v-e3da5314]:hover:not(:disabled),.lopin-garden-spaces-rail__menu-item[data-v-e3da5314]:focus-visible{background:var(--color-surface-alt);outline:none}.lopin-garden-spaces-rail__menu-item[data-v-e3da5314]:disabled{color:var(--color-ink-soft);cursor:not-allowed;opacity:.55}.lopin-garden-spaces-rail__menu-item--danger[data-v-e3da5314]{color:var(--color-earth)}.lopin-garden-context-inspector[data-v-73f72d1d]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;display:grid;flex-shrink:0;gap:var(--space-2);grid-template-rows:auto minmax(0,1fr);max-height:100%;min-height:0;min-width:0;overflow:auto;padding:var(--space-2);width:var(--garden-inspector-width, 200px)}.lopin-garden-context-inspector__title[data-v-73f72d1d]{font-family:var(--font-display);font-size:var(--type-small-size);font-weight:600;line-height:var(--type-small-line);margin:0}.lopin-garden-context-inspector__body[data-v-73f72d1d]{display:grid;gap:var(--space-2);min-height:0;min-width:0;overflow:hidden}.lopin-garden-culture-overlay[data-v-7293af98]{inset:0;pointer-events:none;position:absolute;z-index:20}.lopin-garden-culture-overlay__backdrop[data-v-7293af98]{background:transparent;border:none;cursor:default;inset:0;pointer-events:auto;position:absolute}.lopin-garden-culture-overlay__panel[data-v-7293af98]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);box-sizing:border-box;display:grid;gap:var(--space-2);grid-template-rows:auto minmax(0,1fr);max-height:calc(100% - var(--space-6));max-width:calc(100% - var(--space-6));min-width:0;overflow:hidden;padding:var(--space-3);pointer-events:auto;position:absolute;right:var(--space-3);top:var(--space-3);width:min(22rem,100%)}.lopin-garden-culture-overlay__header[data-v-7293af98]{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;min-width:0}.lopin-garden-culture-overlay__title[data-v-7293af98]{font-family:var(--font-display);font-size:var(--type-small-size);font-weight:600;line-height:var(--type-small-line);margin:0;min-width:0}.lopin-garden-culture-overlay__body[data-v-7293af98]{display:grid;gap:var(--space-3);min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto}.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-stepper__controls{max-width:100%;min-width:0}.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-stepper{max-width:100%}.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-dropdown,.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-plant-combobox,.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-stepper,.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-field,.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-button,.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-dropdown__trigger,.lopin-garden-culture-overlay__body[data-v-7293af98] .lopin-plant-combobox__anchor{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.lopin-garden-month-ruban[data-v-49645c9a]{align-items:stretch;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:var(--space-1);min-height:3rem;padding:var(--space-1)}.lopin-garden-month-ruban__nav[data-v-49645c9a]{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--color-ink-soft);cursor:pointer;display:inline-flex;flex-shrink:0;font-family:var(--font-body);font-size:var(--type-body-size);justify-content:center;min-width:2rem;padding:0 var(--space-1)}.lopin-garden-month-ruban__nav[data-v-49645c9a]:hover{background:var(--color-surface-alt);color:var(--color-ink)}.lopin-garden-month-ruban__months[data-v-49645c9a]{display:grid;flex:1;gap:var(--space-1);grid-template-columns:repeat(12,minmax(0,1fr));list-style:none;margin:0;min-width:0;padding:0}.lopin-garden-month-ruban__item[data-v-49645c9a]{min-width:0}.lopin-garden-month-ruban__month[data-v-49645c9a]{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-ink-soft);cursor:pointer;display:grid;font-family:var(--font-body);font-size:var(--type-caption-size);gap:var(--space-1);justify-items:center;padding:var(--space-1);width:100%}.lopin-garden-month-ruban__month[data-v-49645c9a]:hover{background:var(--color-surface-alt);color:var(--color-ink)}.lopin-garden-month-ruban__month.is-current[data-v-49645c9a]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong);font-weight:600}.lopin-garden-month-ruban__label[data-v-49645c9a]{font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.lopin-garden-month-ruban__gauge[data-v-49645c9a]{background:var(--color-border);border-radius:var(--radius-pill);display:block;height:3px;overflow:hidden;width:100%}.lopin-garden-month-ruban__gauge-fill[data-v-49645c9a]{background:var(--color-primary);border-radius:var(--radius-pill);display:block;height:100%;width:100%}.lopin-garden-alerts-recap[data-v-d1844f04]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.lopin-garden-alerts-recap__toggle[data-v-d1844f04]{align-items:center;background:transparent;border:0;color:var(--color-ink);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--type-body-size);gap:var(--space-2);padding:var(--space-2) var(--space-3);text-align:left;width:100%}.lopin-garden-alerts-recap__title[data-v-d1844f04]{flex:1;font-weight:600}.lopin-garden-alerts-recap__count[data-v-d1844f04]{background:var(--color-surface-alt);border-radius:var(--radius-pill);color:var(--color-ink-soft);font-size:var(--type-caption-size);font-variant-numeric:tabular-nums;min-width:1.5rem;padding:0 var(--space-2);text-align:center}.lopin-garden-alerts-recap__chevron[data-v-d1844f04]{color:var(--color-ink-soft)}.lopin-garden-alerts-recap__list[data-v-d1844f04]{border-top:1px solid var(--color-border);list-style:none;margin:0;max-height:10rem;overflow:auto;padding:var(--space-2) var(--space-3)}.lopin-garden-alerts-recap__item[data-v-d1844f04]{align-items:flex-start;display:flex;font-size:var(--type-caption-size);gap:var(--space-2);padding:var(--space-1) 0}.lopin-garden-alerts-recap__badge[data-v-d1844f04]{border-radius:var(--radius-pill);flex-shrink:0;font-size:var(--type-caption-size);font-weight:700;line-height:1.4;min-width:1.25rem;text-align:center}.lopin-garden-alerts-recap__item.is-negative .lopin-garden-alerts-recap__badge[data-v-d1844f04]{background:color-mix(in srgb,var(--color-negative) 18%,var(--color-surface));color:var(--color-negative)}.lopin-garden-alerts-recap__item.is-sun .lopin-garden-alerts-recap__badge[data-v-d1844f04]{background:color-mix(in srgb,var(--color-sun) 22%,var(--color-surface));color:var(--color-ink)}.lopin-map-photo-wizard__scrim[data-v-21dc15ca]{background:color-mix(in srgb,var(--color-ink) 40%,transparent)}.lopin-map-photo-wizard[data-v-21dc15ca]{display:grid;gap:var(--space-3);grid-template-rows:auto minmax(0,1fr) auto auto auto;height:min(92vh,56rem);inset:0;margin:auto;max-height:calc(100vh - 2 * var(--space-4));max-width:min(94vw,56rem);overflow:hidden;padding:var(--space-4);pointer-events:auto;position:fixed;width:calc(100% - 2 * var(--space-4));z-index:50}.lopin-map-photo-wizard__header[data-v-21dc15ca]{display:grid;gap:var(--space-1)}.lopin-map-photo-wizard__title[data-v-21dc15ca]{font-family:var(--font-display);font-size:var(--type-h3-size);margin:0}.lopin-map-photo-wizard__hint[data-v-21dc15ca]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.lopin-map-photo-wizard__step[data-v-21dc15ca]{color:var(--color-primary-strong);font-size:var(--type-caption-size);font-weight:600;margin:0}.lopin-map-photo-wizard__preview[data-v-21dc15ca]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:0;overflow:hidden;position:relative;touch-action:none;user-select:none}.lopin-map-photo-wizard__preview--grab[data-v-21dc15ca]{cursor:grab}.lopin-map-photo-wizard__preview--grabbing[data-v-21dc15ca]{cursor:grabbing}.lopin-map-photo-wizard__preview--calibrate[data-v-21dc15ca]{display:flex}.lopin-map-photo-wizard__preview--crosshair[data-v-21dc15ca]{cursor:crosshair}.lopin-map-photo-wizard__calibrate-svg[data-v-21dc15ca]{display:block;height:100%;width:100%}.lopin-map-photo-wizard__reference-frame[data-v-21dc15ca]{fill:var(--color-surface-alt);stroke:var(--color-primary);stroke-dasharray:8 4;stroke-width:2}.lopin-map-photo-wizard__stage[data-v-21dc15ca]{height:100%;position:relative;transform-origin:center center;width:100%}.lopin-map-photo-wizard__rotated[data-v-21dc15ca]{align-items:center;display:flex;height:100%;justify-content:center;position:relative;transform-origin:center center;width:100%;z-index:0}.lopin-map-photo-wizard__grid[data-v-21dc15ca]{height:100%;inset:0;opacity:.55;pointer-events:none;position:absolute;width:100%;z-index:1}.lopin-map-photo-wizard__image[data-v-21dc15ca]{display:block;height:100%;max-height:100%;object-fit:contain;width:100%}.lopin-map-photo-wizard__line[data-v-21dc15ca]{pointer-events:none;stroke:var(--color-sun);stroke-width:3}.lopin-map-photo-wizard__cal-hint[data-v-21dc15ca]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.lopin-map-photo-wizard__zoom[data-v-21dc15ca]{align-items:stretch;border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.lopin-map-photo-wizard__zoom-btn[data-v-21dc15ca]{align-items:center;background:transparent;border:0;color:var(--color-ink);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--type-small-size);justify-content:center;min-width:2.25rem;padding:var(--space-2) var(--space-3)}.lopin-map-photo-wizard__zoom-btn+.lopin-map-photo-wizard__zoom-btn[data-v-21dc15ca],.lopin-map-photo-wizard__zoom-value+.lopin-map-photo-wizard__zoom-btn[data-v-21dc15ca]{border-left:1px solid var(--color-border)}.lopin-map-photo-wizard__zoom-value[data-v-21dc15ca]{align-items:center;color:var(--color-ink-soft);display:inline-flex;font-size:var(--type-small-size);font-variant-numeric:tabular-nums;justify-content:center;min-width:3.5rem;padding:0 var(--space-2)}.lopin-map-photo-wizard__zoom-btn--fit[data-v-21dc15ca]{padding:var(--space-2)}.lopin-map-photo-wizard__rotation[data-v-21dc15ca]{align-items:center;color:var(--color-ink-soft);display:flex;flex-wrap:wrap;font-size:var(--type-caption-size);gap:var(--space-2)}.lopin-map-photo-wizard__rotation input[type=range][data-v-21dc15ca]{flex:1;min-width:8rem}.lopin-map-photo-wizard__actions[data-v-21dc15ca]{align-items:end;display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-map-photo-wizard__footer[data-v-21dc15ca]{display:flex;gap:var(--space-2);justify-content:flex-end}.lopin-plant-import-wizard__overlay[data-v-2851bf0d]{background:color-mix(in srgb,var(--color-ink) 45%,transparent);inset:0;position:fixed;z-index:var(--z-overlay)}.lopin-plant-import-wizard__motion-wrap[data-v-2851bf0d]{inset:0;position:fixed;z-index:calc(var(--z-overlay) + 1);display:grid;place-items:center;padding:var(--space-4)}.lopin-plant-import-wizard[data-v-2851bf0d]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:grid;gap:var(--space-4);max-height:min(90vh,44rem);max-width:36rem;overflow:auto;padding:var(--space-5);width:100%}.lopin-plant-import-wizard__header[data-v-2851bf0d]{display:grid;gap:var(--space-1)}.lopin-plant-import-wizard__title[data-v-2851bf0d]{font-family:var(--font-display);font-size:var(--type-h3-size);margin:0}.lopin-plant-import-wizard__step[data-v-2851bf0d]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0}.lopin-plant-import-wizard__body[data-v-2851bf0d]{display:grid;gap:var(--space-4)}.lopin-plant-import-wizard__lead[data-v-2851bf0d]{color:var(--color-ink-soft);margin:0}.lopin-plant-import-wizard__notice[data-v-2851bf0d]{background:var(--color-surface-alt);border-radius:var(--radius-md);color:var(--color-ink);font-size:var(--type-small-size);margin:0;padding:var(--space-3)}.lopin-plant-import-wizard__notice-title[data-v-2851bf0d]{font-weight:600;margin:0 0 var(--space-2)}.lopin-plant-import-wizard__tips[data-v-2851bf0d]{margin:0;padding-left:var(--space-4)}.lopin-plant-import-wizard__tips li+li[data-v-2851bf0d]{margin-top:var(--space-1)}.lopin-plant-import-wizard__downloads[data-v-2851bf0d]{display:flex;flex-wrap:wrap;gap:var(--space-3)}.lopin-plant-import-wizard__file-input[data-v-2851bf0d]{display:none}.lopin-plant-import-wizard__plant-name[data-v-2851bf0d]{font-size:var(--type-h4-size);margin:0}.lopin-plant-import-wizard__meta[data-v-2851bf0d]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0}.lopin-plant-import-wizard__flags[data-v-2851bf0d]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-plant-import-wizard__diff[data-v-2851bf0d]{background:var(--color-surface-alt);border-radius:var(--radius-md);display:grid;gap:var(--space-3);padding:var(--space-3)}.lopin-plant-import-wizard__diff-title[data-v-2851bf0d]{font-weight:600;margin:0}.lopin-plant-import-wizard__diff-block h4[data-v-2851bf0d]{font-size:var(--type-small-size);margin:0 0 var(--space-1)}.lopin-plant-import-wizard__diff-block ul[data-v-2851bf0d]{margin:0;padding-left:var(--space-4)}.lopin-plant-import-wizard__error[data-v-2851bf0d]{color:var(--color-danger);margin:0}.lopin-plant-import-wizard__footer[data-v-2851bf0d]{align-items:center;border-top:1px solid var(--color-border);display:flex;gap:var(--space-3);justify-content:space-between;padding-top:var(--space-3)}.lopin-plant-import-wizard__footer-actions[data-v-2851bf0d]{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.lopin-weather-icon[data-v-158440c0]{color:var(--color-sky);display:inline-flex;height:48px;width:48px}.lopin-weather-icon[data-v-158440c0] svg{display:block;height:100%;width:100%}.lopin-weather-icon.is-paused[data-v-158440c0] svg{animation:none}.lopin-attention-point-card[data-v-1da32909]{border:1px solid var(--color-border);border-radius:var(--radius-lg);display:grid;gap:var(--space-2);padding:var(--space-4);transition:transform var(--motion-micro) var(--ease-standard)}.lopin-attention-point-card[data-v-1da32909]:hover{transform:translate(var(--space-1))}.lopin-attention-point-card.is-referenced[data-v-1da32909]{border-color:color-mix(in srgb,var(--color-sun) 45%,var(--color-border))}.lopin-attention-point-card__title[data-v-1da32909]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.lopin-attention-point-card__detail[data-v-1da32909]{color:var(--color-ink-soft);font-family:var(--font-body);margin:0}.lopin-attention-point-card--frost[data-v-1da32909]{background:var(--color-surface);border-left:4px solid var(--color-frost)}.lopin-attention-point-card--heat[data-v-1da32909]{background:var(--color-surface);border-left:4px solid var(--color-heat)}.lopin-attention-point-card--sow[data-v-1da32909]{background:var(--color-primary-soft);border-left:4px solid var(--color-primary)}.lopin-attention-point-card--neglect[data-v-1da32909]{background:var(--color-negative-soft-bg);border-left:4px solid var(--color-negative)}.lopin-attention-point-card--harvest[data-v-1da32909]{background:var(--color-surface);border-left:4px solid var(--color-sun)}.lopin-dashboard-attention[data-v-d43d6c1a]{display:grid;gap:var(--space-4)}.lopin-dashboard-attention__horizon[data-v-d43d6c1a]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:500;letter-spacing:.04em;margin:0 0 var(--space-2);text-transform:uppercase}.lopin-dashboard-attention__list[data-v-d43d6c1a]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);list-style:none;margin:0;padding:0 var(--space-3)}.lopin-dashboard-attention__row[data-v-d43d6c1a]{align-items:center;background:transparent;border:none;color:inherit;cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-3) 0;text-align:left;transition:transform var(--motion-micro) var(--ease-standard);width:100%}.lopin-dashboard-attention__row[data-v-d43d6c1a]:hover{transform:translate(var(--space-1))}.lopin-dashboard-attention__list li+li .lopin-dashboard-attention__row[data-v-d43d6c1a]{border-top:1px solid var(--color-border)}.lopin-dashboard-attention__dot[data-v-d43d6c1a]{border-radius:50%;flex:0 0 auto;height:9px;width:9px}.lopin-dashboard-attention__dot--frost[data-v-d43d6c1a]{background:var(--color-frost)}.lopin-dashboard-attention__dot--heat[data-v-d43d6c1a]{background:var(--color-heat)}.lopin-dashboard-attention__dot--sow[data-v-d43d6c1a]{background:var(--color-primary)}.lopin-dashboard-attention__dot--harvest[data-v-d43d6c1a]{background:var(--color-sun)}.lopin-dashboard-attention__dot--neglect[data-v-d43d6c1a]{background:var(--color-negative)}.lopin-dashboard-attention__glyph[data-v-d43d6c1a]{align-items:center;border-radius:var(--radius-sm);display:inline-flex;flex:0 0 auto;font-size:var(--type-small-size);height:28px;justify-content:center;width:28px}.lopin-dashboard-attention__glyph--frost[data-v-d43d6c1a]{background:var(--color-surface-alt);color:var(--color-frost)}.lopin-dashboard-attention__glyph--heat[data-v-d43d6c1a]{background:var(--color-surface-alt);color:var(--color-heat)}.lopin-dashboard-attention__glyph--sow[data-v-d43d6c1a]{background:var(--color-primary-soft);color:var(--color-primary)}.lopin-dashboard-attention__glyph--harvest[data-v-d43d6c1a]{background:var(--color-surface-alt);color:var(--color-sun)}.lopin-dashboard-attention__glyph--neglect[data-v-d43d6c1a]{background:var(--color-negative-soft-bg);color:var(--color-negative)}.lopin-dashboard-attention__body[data-v-d43d6c1a]{display:grid;flex:1;gap:2px;min-width:0}.lopin-dashboard-attention__title-row[data-v-d43d6c1a]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-dashboard-attention__title[data-v-d43d6c1a]{color:var(--color-ink);font-size:var(--type-body-size)}.lopin-dashboard-attention__chip[data-v-d43d6c1a]{background:var(--color-surface-alt);border-radius:var(--radius-pill);color:var(--color-ink-soft);font-size:var(--type-caption-size);padding:0 var(--space-2)}.lopin-dashboard-attention__detail[data-v-d43d6c1a]{color:var(--color-ink-soft);font-size:var(--type-small-size)}.lopin-dashboard-attention__chev[data-v-d43d6c1a]{color:var(--color-ink-soft);flex:0 0 auto;font-size:var(--type-h2-size)}.lopin-heat-scale[data-v-cd262ab7]{display:grid;gap:var(--space-1);width:100%}.lopin-heat-scale__bar[data-v-cd262ab7]{border-radius:var(--radius-pill);display:flex;height:7px;overflow:hidden;position:relative}.lopin-heat-scale__segment[data-v-cd262ab7]{flex:1;opacity:.9}.lopin-heat-scale__marker[data-v-cd262ab7]{border-left:4px solid transparent;border-right:4px solid transparent;border-top:6px solid var(--color-ink);height:0;position:absolute;top:-10px;transform:translate(-50%);width:0}.lopin-heat-scale__labels[data-v-cd262ab7]{color:var(--color-ink-soft);display:flex;font-size:10px;justify-content:space-between;line-height:1}.lopin-weather-card[data-v-a41f3b44]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:grid;gap:var(--space-2);min-height:148px;padding:var(--space-4)}.lopin-weather-card--hero[data-v-a41f3b44]{border-color:var(--color-sky);box-shadow:var(--shadow-lift)}.lopin-weather-card--clickable[data-v-a41f3b44]{cursor:pointer;text-align:left;width:100%}.lopin-weather-card--clickable[data-v-a41f3b44]:hover{box-shadow:var(--shadow-lift)}.lopin-weather-card--clickable[data-v-a41f3b44]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.lopin-weather-card__head[data-v-a41f3b44]{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--space-2)}.lopin-weather-card__day[data-v-a41f3b44]{color:var(--color-ink);font-size:var(--type-small-size);font-weight:700}.lopin-weather-card__date[data-v-a41f3b44]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.lopin-weather-card__body[data-v-a41f3b44]{align-items:center;display:flex;gap:var(--space-4)}.lopin-weather-card__hero[data-v-a41f3b44]{align-items:center;display:grid;flex:0 0 132px;gap:var(--space-1);justify-items:center;width:132px}.lopin-weather-card__icon[data-v-a41f3b44],.lopin-weather-card__icon[data-v-a41f3b44] .lopin-weather-icon{height:88px;width:88px}.lopin-weather-card__temp[data-v-a41f3b44]{font-family:var(--font-display);font-size:calc(var(--type-h2-size) * 1.1);font-weight:700;line-height:1;margin:0}.lopin-weather-card__meta[data-v-a41f3b44]{display:grid;flex:1;gap:var(--space-3);min-width:0}.lopin-weather-card__stat[data-v-a41f3b44]{display:grid;gap:0}.lopin-weather-card__stat-label[data-v-a41f3b44]{color:var(--color-ink-soft);font-size:var(--type-caption-size);font-weight:600}.lopin-weather-card__stat-value[data-v-a41f3b44]{color:var(--color-ink);font-size:var(--type-body-size);font-weight:600}.lopin-weather-card__notice[data-v-a41f3b44]{align-self:flex-start;background:var(--color-negative-soft-bg);border-radius:var(--radius-pill);color:var(--color-negative-text);font-size:var(--type-caption-size);font-weight:600;margin:0;padding:var(--space-1) var(--space-3)}.lopin-weather-card__hint[data-v-a41f3b44]{color:var(--color-sky);font-size:var(--type-caption-size);margin:0}.lopin-weather-strip[data-v-7094e977]{display:grid;gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:900px){.lopin-weather-strip[data-v-7094e977]{grid-template-columns:repeat(2,minmax(0,1fr))}}.lopin-weather-advice[data-v-dc1978aa]{border:thin solid var(--color-border);border-radius:var(--radius-lg);display:grid;list-style:none;margin:0;overflow:hidden;padding:0}.lopin-weather-advice__row[data-v-dc1978aa]{align-items:flex-start;display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.lopin-weather-advice__row+.lopin-weather-advice__row[data-v-dc1978aa]{border-top:1px solid var(--color-border)}.lopin-weather-advice__row--alert .lopin-weather-advice__icon[data-v-dc1978aa]{background:var(--color-negative-soft-bg);color:var(--color-negative-text)}.lopin-weather-advice__row--warning .lopin-weather-advice__icon[data-v-dc1978aa]{background:var(--color-primary-soft);color:var(--color-primary-strong)}.lopin-weather-advice__row--info .lopin-weather-advice__icon[data-v-dc1978aa]{background:var(--color-surface-alt);color:var(--color-ink-soft)}.lopin-weather-advice__icon[data-v-dc1978aa]{align-items:center;border-radius:var(--radius-sm);display:flex;flex:0 0 26px;font-size:14px;height:26px;justify-content:center;width:26px}.lopin-weather-advice__text[data-v-dc1978aa]{display:grid;font-size:var(--type-small-size);gap:var(--space-1);line-height:1.45}.lopin-weather-advice__text strong[data-v-dc1978aa]{color:var(--color-ink);font-weight:600}.lopin-weather-advice__text span[data-v-dc1978aa]{color:var(--color-ink-soft)}.lopin-weather-advice__empty[data-v-dc1978aa]{color:var(--color-ink-soft);font-size:var(--type-small-size);padding:var(--space-3) var(--space-4)}.lopin-weather-trend[data-v-3341a5ed]{display:flex;gap:var(--space-2)}.lopin-weather-trend__col[data-v-3341a5ed]{align-items:center;display:grid;flex:1;gap:var(--space-1);justify-items:center;text-align:center}.lopin-weather-trend__max[data-v-3341a5ed]{font-size:var(--type-small-size);font-weight:600}.lopin-weather-trend__track[data-v-3341a5ed]{height:56px;position:relative;width:100%}.lopin-weather-trend__bar[data-v-3341a5ed]{border-radius:var(--radius-pill);left:50%;opacity:.9;position:absolute;transform:translate(-50%);width:6px}.lopin-weather-trend__min[data-v-3341a5ed],.lopin-weather-trend__label[data-v-3341a5ed]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.lopin-copilot-card[data-v-338faab5]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:grid;gap:var(--space-2);padding:var(--space-4)}.lopin-copilot-card--banner[data-v-338faab5]{background:var(--color-ai-soft-bg);border-color:transparent;border-radius:var(--radius-md);color:var(--color-ai);padding:var(--space-3) var(--space-4)}.lopin-copilot-card.is-unconfirmed[data-v-338faab5]{border-color:var(--color-ai);border-style:dashed}.lopin-copilot-card__header[data-v-338faab5]{align-items:center;color:var(--color-ink);display:flex;font-family:var(--font-body);justify-content:space-between}.lopin-copilot-card__suggestion[data-v-338faab5]{color:var(--color-ink-soft);font-family:var(--font-body);line-height:1.5;margin:0}.lopin-copilot-card--banner .lopin-copilot-card__suggestion[data-v-338faab5]{align-items:flex-start;color:var(--color-ink);display:flex;font-size:var(--type-small-size);gap:var(--space-2)}.lopin-copilot-card__spark[data-v-338faab5]{color:var(--color-ai);flex:0 0 auto;line-height:1.4}.lopin-date-cursor[data-v-8513a8c8]{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.lopin-date-cursor.is-today[data-v-8513a8c8]{background:var(--color-primary-soft);border-color:var(--color-primary)}.lopin-date-cursor__label[data-v-8513a8c8]{color:var(--color-ink);font-family:var(--font-body);font-weight:600}.lopin-date-cursor__status[data-v-8513a8c8]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size)}.lopin-succession-ribbon[data-v-68889a71]{--succession-gutter: calc(var(--space-7) + var(--space-4));--succession-zone-rail: var(--color-primary-soft);--succession-bed-head: var(--color-surface-alt);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-gutter:stable;width:100%}.lopin-succession-ribbon__chart[data-v-68889a71]{min-width:44rem;position:relative;width:100%}.lopin-succession-ribbon__track-overlays[data-v-68889a71]{bottom:0;left:var(--succession-gutter);pointer-events:none;position:absolute;right:0;top:0;z-index:1}.lopin-succession-ribbon__header[data-v-68889a71]{display:grid;grid-template-columns:var(--succession-gutter) minmax(0,1fr);position:relative;z-index:2}.lopin-succession-ribbon__gutter-spacer[data-v-68889a71]{grid-column:1}.lopin-succession-ribbon__header-track[data-v-68889a71]{grid-column:2;min-height:2.5rem}.lopin-succession-ribbon__year-row[data-v-68889a71],.lopin-succession-ribbon__month-row[data-v-68889a71]{min-height:1.25rem;position:relative}.lopin-succession-ribbon__year-band[data-v-68889a71]{align-items:center;color:var(--color-ink-soft);display:flex;font-size:var(--type-caption-size);font-variant-numeric:tabular-nums;height:1.25rem;justify-content:center;position:absolute;top:0}.lopin-succession-ribbon__year-band.is-center-year[data-v-68889a71]{background:color-mix(in srgb,var(--color-primary-soft) 55%,transparent);border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--color-primary-strong);font-weight:600}.lopin-succession-ribbon__month[data-v-68889a71]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:1.25rem;position:absolute;text-align:center;top:0}.lopin-succession-ribbon__month.is-center-year[data-v-68889a71]{color:var(--color-ink)}.lopin-succession-ribbon__month.is-january[data-v-68889a71]{border-left:1px solid var(--color-border)}.lopin-succession-ribbon__lanes[data-v-68889a71]{display:grid;gap:var(--space-3);margin-top:var(--space-2);position:relative;z-index:2}.lopin-succession-ribbon__bed[data-v-68889a71]{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.lopin-succession-ribbon__bed-head[data-v-68889a71]{align-items:center;background:var(--succession-bed-head);display:flex;flex-wrap:wrap;font-size:var(--type-small-size);font-weight:500;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.lopin-succession-ribbon__bed-title[data-v-68889a71]{color:var(--color-ink)}.lopin-succession-ribbon__bed-count[data-v-68889a71]{color:var(--color-ink-soft);font-size:var(--type-caption-size);font-weight:400}.lopin-succession-ribbon__zone-row[data-v-68889a71]{border-top:1px solid var(--color-border);display:grid;grid-template-columns:var(--succession-gutter) minmax(0,1fr);min-height:1.75rem}.lopin-succession-ribbon__zone-label[data-v-68889a71]{align-items:center;border-left:3px solid var(--succession-zone-rail);color:var(--color-ink-soft);display:flex;font-size:var(--type-caption-size);overflow:hidden;padding-left:var(--space-2);text-overflow:ellipsis;white-space:nowrap}.lopin-succession-ribbon__zone-track[data-v-68889a71]{min-height:1.75rem;position:relative;z-index:2}.lopin-succession-ribbon__center-band[data-v-68889a71]{background:color-mix(in srgb,var(--color-primary-soft) 35%,transparent);bottom:0;pointer-events:none;position:absolute;top:0;z-index:0}.lopin-succession-ribbon__january[data-v-68889a71]{border-left:1px solid var(--color-border);bottom:0;pointer-events:none;position:absolute;top:0;z-index:1}.lopin-succession-ribbon__baseline[data-v-68889a71]{border-top:1px dashed color-mix(in srgb,var(--color-border) 85%,var(--color-ink-soft));left:0;pointer-events:none;position:absolute;right:0;top:50%;z-index:1}.lopin-succession-ribbon__bar[data-v-68889a71]{align-items:center;border:none;border-radius:var(--radius-sm);color:var(--color-surface);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:500;height:1rem;overflow:hidden;padding:0 var(--space-2);position:absolute;text-align:left;text-overflow:ellipsis;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:2}.lopin-succession-ribbon__gap[data-v-68889a71]{background:transparent;border:none;cursor:pointer;height:1rem;padding:0;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.lopin-succession-ribbon__gap[data-v-68889a71]:hover,.lopin-succession-ribbon__gap[data-v-68889a71]:focus-visible{outline:none}.lopin-succession-ribbon__gap[data-v-68889a71]:hover:after,.lopin-succession-ribbon__gap[data-v-68889a71]:focus-visible:after{border-bottom:1px solid var(--color-primary);bottom:0;content:"";left:0;position:absolute;right:0}.lopin-succession-ribbon__today[data-v-68889a71]{bottom:0;pointer-events:none;position:absolute;top:0;width:2px;z-index:10}.lopin-succession-ribbon__today[data-v-68889a71]:before{background:var(--color-primary-strong);bottom:0;content:"";left:0;opacity:.6;position:absolute;top:0;width:2px}.lopin-succession-ribbon__today-chip[data-v-68889a71]{background:var(--color-primary-strong);border-radius:var(--radius-sm);color:var(--color-surface);font-size:var(--type-caption-size);font-weight:500;left:50%;line-height:1.2;padding:0 var(--space-1);position:absolute;top:0;transform:translate(-50%);white-space:nowrap}.lopin-planning-seeds[data-v-706ec273]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.lopin-planning-seeds__title[data-v-706ec273]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-sm-size);font-weight:500;margin:0 0 var(--space-2)}.lopin-planning-seeds__list[data-v-706ec273]{list-style:none;margin:0;padding:0}.lopin-planning-seeds__item[data-v-706ec273]{align-items:center;display:flex;font-size:var(--type-body-sm-size);justify-content:space-between;padding:var(--space-1) 0}.lopin-planning-seeds__item+.lopin-planning-seeds__item[data-v-706ec273]{border-top:1px solid var(--color-border)}.lopin-planning-seeds__muted[data-v-706ec273]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.lopin-planning-seeds__empty[data-v-706ec273]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.journal-quick-log[data-v-131cddd6]{display:grid;gap:var(--space-3)}.journal-quick-log__types[data-v-131cddd6]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.journal-quick-log__type[data-v-131cddd6]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;line-height:var(--type-caption-line);padding:var(--space-1) var(--space-3);transition:background-color var(--motion-micro) var(--ease-standard),border-color var(--motion-micro) var(--ease-standard)}.journal-quick-log__type--active[data-v-131cddd6]{background:var(--color-positive-soft-bg);border-color:var(--color-positive);color:var(--color-positive-text)}.journal-quick-log__subtypes[data-v-131cddd6]{display:grid;gap:var(--space-2)}.journal-quick-log__subtype[data-v-131cddd6]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);margin-right:var(--space-2);padding:var(--space-1) var(--space-3)}.journal-quick-log__subtype--active[data-v-131cddd6]{background:var(--color-surface-alt);border-color:var(--color-sky);color:var(--color-sky)}.journal-quick-log__photo-row[data-v-131cddd6]{align-items:center;display:flex;gap:var(--space-3)}.journal-quick-log__photo-label[data-v-131cddd6]{color:var(--color-ink-muted);cursor:pointer;font-size:var(--type-small-size)}.journal-quick-log__photo-input[data-v-131cddd6]{display:block;margin-top:var(--space-1)}.journal-quick-log__photo-preview[data-v-131cddd6]{border-radius:var(--radius-md);height:3rem;object-fit:cover;width:3rem}.journal-timeline[data-v-830f5bec]{display:grid;gap:var(--space-3)}.journal-timeline__title[data-v-830f5bec]{font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.journal-timeline__empty[data-v-830f5bec]{color:var(--color-ink-muted);font-size:var(--type-body-size);margin:0}.journal-timeline__list[data-v-830f5bec]{display:grid;gap:var(--space-3);list-style:none;margin:0;padding:0}.journal-timeline__item[data-v-830f5bec]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-3);grid-template-columns:auto 1fr;padding:var(--space-3)}.journal-timeline__thumb[data-v-830f5bec]{border-radius:var(--radius-sm);height:3.5rem;object-fit:cover;width:3.5rem}.journal-timeline__thumb--placeholder[data-v-830f5bec]{background:var(--color-surface-alt)}.journal-timeline__body[data-v-830f5bec]{display:grid;gap:var(--space-1)}.journal-timeline__meta[data-v-830f5bec]{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between}.journal-timeline__verb[data-v-830f5bec]{font-weight:700}.journal-timeline__verb--sow[data-v-830f5bec],.journal-timeline__verb--transplant[data-v-830f5bec]{color:var(--color-positive-text)}.journal-timeline__verb--harvest[data-v-830f5bec]{color:var(--color-positive)}.journal-timeline__verb--water[data-v-830f5bec]{color:var(--color-sky)}.journal-timeline__verb--observe[data-v-830f5bec],.journal-timeline__verb--maintain[data-v-830f5bec]{color:var(--color-ink-muted)}.journal-timeline__verb--amend[data-v-830f5bec]{color:var(--color-ai)}.journal-timeline__verb--worked[data-v-830f5bec]{color:var(--color-positive-text)}.journal-timeline__verb--failed[data-v-830f5bec]{color:var(--color-negative-text)}.journal-timeline__verb--mixed[data-v-830f5bec]{color:var(--color-ink)}.journal-timeline__date[data-v-830f5bec]{color:var(--color-ink-muted);font-size:var(--type-caption-size)}.journal-timeline__summary[data-v-830f5bec]{margin:0}.journal-timeline__note[data-v-830f5bec]{color:var(--color-ink-muted);font-size:var(--type-small-size);margin:0}.journal-timeline__context[data-v-830f5bec]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:0}.journal-outcome[data-v-a3d8ebcf]{display:grid;gap:var(--space-3)}.journal-outcome__chips[data-v-a3d8ebcf]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.journal-outcome__chip[data-v-a3d8ebcf]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;padding:var(--space-1) var(--space-3)}.journal-outcome__chip--active[data-v-a3d8ebcf]{background:var(--color-positive-soft-bg);border-color:var(--color-positive);color:var(--color-positive-text)}.reward-moment[data-v-0f96215a]{align-items:center;display:flex;inset:0;justify-content:center;pointer-events:none;position:fixed;z-index:60}.app-shell[data-v-43d21f16]{--app-shell-topbar-height: 3.25rem;--app-shell-main-scroll-height: calc(100dvh - var(--app-shell-topbar-height));display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);height:100%;overflow:hidden;background:var(--color-bg);color:var(--color-ink)}.app-shell.is-immersive[data-v-43d21f16]{grid-template-columns:minmax(0,1fr)}.app-shell.is-immersive .app-shell__main[data-v-43d21f16]{padding:0}.app-shell-sidebar-enter-active[data-v-43d21f16],.app-shell-sidebar-leave-active[data-v-43d21f16],.app-shell-topbar-enter-active[data-v-43d21f16],.app-shell-topbar-leave-active[data-v-43d21f16]{transition:opacity var(--motion-standard) var(--ease-standard),transform var(--motion-standard) var(--ease-standard)}.app-shell-sidebar-enter-from[data-v-43d21f16],.app-shell-sidebar-leave-to[data-v-43d21f16]{opacity:0;transform:translate(calc(var(--space-4) * -1))}.app-shell-topbar-enter-from[data-v-43d21f16],.app-shell-topbar-leave-to[data-v-43d21f16]{opacity:0;transform:translateY(calc(var(--space-3) * -1))}.app-shell__sidebar[data-v-43d21f16]{display:flex;flex-direction:column;gap:var(--space-5);height:100%;overflow:hidden;padding:var(--space-5) var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border)}.app-shell__brand[data-v-43d21f16]{display:grid;gap:var(--space-1);flex-shrink:0}.app-shell__title[data-v-43d21f16]{margin:0;font-family:var(--font-display);font-size:var(--type-h1-size);line-height:var(--type-h1-line);color:var(--color-primary-strong)}.app-shell__user[data-v-43d21f16]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.app-shell__nav[data-v-43d21f16]{display:flex;flex:1;flex-direction:column;gap:var(--space-4);min-height:0;overflow-y:auto;overscroll-behavior:contain}.app-shell__nav-section[data-v-43d21f16]{display:grid;gap:var(--space-1)}.app-shell__nav-section--pinned[data-v-43d21f16]{border-top:1px solid var(--color-border);margin-top:auto;padding-top:var(--space-3)}.app-shell__nav-heading[data-v-43d21f16]{color:var(--color-ink-faint);font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;letter-spacing:.04em;margin:0;padding:0 var(--space-3);text-transform:uppercase}.app-shell__nav-link[data-v-43d21f16]{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:500;text-decoration:none}.app-shell__nav-link[data-v-43d21f16]:hover{background:var(--color-primary-soft)}.app-shell__nav-link--active[data-v-43d21f16]{background:var(--color-primary-soft);color:var(--color-primary-strong);font-weight:700}.app-shell__nav-link[data-v-43d21f16]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.app-shell__sidebar-footer[data-v-43d21f16]{display:grid;flex-shrink:0;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.app-shell__body[data-v-43d21f16]{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0;overflow:hidden}.app-shell__topbar[data-v-43d21f16]{align-items:center;display:grid;flex-shrink:0;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);min-height:var(--app-shell-topbar-height);padding:var(--space-2) var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-soft);position:relative}.app-shell__topbar-start[data-v-43d21f16]{justify-self:start;min-width:0}.app-shell__topbar-center[data-v-43d21f16]{justify-self:center;max-width:min(28rem,100%);min-width:0;text-align:center}.app-shell__topbar-end[data-v-43d21f16]{justify-self:end}.app-shell__breadcrumbs[data-v-43d21f16]{min-width:0}.app-shell__breadcrumb-list[data-v-43d21f16]{display:flex;flex-wrap:wrap;gap:var(--space-1);list-style:none;margin:0;padding:0}.app-shell__breadcrumb-item[data-v-43d21f16]{align-items:center;display:inline-flex;gap:var(--space-1);min-width:0}.app-shell__breadcrumb-link[data-v-43d21f16],.app-shell__breadcrumb-text[data-v-43d21f16]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line);text-decoration:none}.app-shell__breadcrumb-link[data-v-43d21f16]:hover{color:var(--color-primary-strong);text-decoration:underline}.app-shell__breadcrumb-sep[data-v-43d21f16]{color:var(--color-ink-muted);font-size:var(--type-caption-size)}.app-shell__page-title[data-v-43d21f16]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-body-size);font-weight:600;line-height:var(--type-body-line);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell__toast-slot[data-v-43d21f16]{left:50%;min-height:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.app-shell__offline[data-v-43d21f16]{background:var(--color-warning-soft, var(--color-primary-soft));border-radius:var(--radius-md);color:var(--color-primary-strong);display:block;font-size:var(--type-caption-size);font-weight:600;line-height:var(--type-caption-line);margin-bottom:var(--space-2);padding:var(--space-1) var(--space-2);width:fit-content}.app-shell__sync-meta[data-v-43d21f16]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0 0 var(--space-2)}.app-shell__install[data-v-43d21f16]{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-surface);font-family:var(--font-body);font-size:var(--type-caption-size);cursor:pointer}.app-shell__install[data-v-43d21f16]:focus-visible{box-shadow:0 0 0 var(--space-2) var(--color-primary-soft)}.app-shell__pwa-status[data-v-43d21f16]{margin:0;color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line)}.app-shell__main[data-v-43d21f16]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-6) var(--space-5)}.design-gallery[data-v-9d38f54a]{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);height:100%;overflow:hidden;background:var(--color-bg);color:var(--color-ink)}.design-gallery__sidebar[data-v-9d38f54a]{display:flex;flex-direction:column;gap:var(--space-4);height:100%;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-5) var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border)}.design-gallery__sidebar-head[data-v-9d38f54a]{display:grid;gap:var(--space-2)}.design-gallery__home[data-v-9d38f54a]{color:var(--color-primary-strong);font-size:var(--type-small-size);text-decoration:none}.design-gallery__home[data-v-9d38f54a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.design-gallery__title[data-v-9d38f54a]{margin:0;font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);color:var(--color-primary-strong)}.design-gallery__subtitle[data-v-9d38f54a]{margin:0;color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-body-line)}.design-gallery__search-label[data-v-9d38f54a]{display:grid;gap:var(--space-1);margin-top:var(--space-2)}.design-gallery__search-caption[data-v-9d38f54a]{color:var(--color-ink-soft);font-size:var(--type-caption-size);font-weight:600}.design-gallery__search[data-v-9d38f54a]{width:100%;min-height:36px;padding:0 var(--space-3);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size)}.design-gallery__search[data-v-9d38f54a]:focus-visible{border-color:var(--color-primary);outline:2px solid var(--color-primary-soft);outline-offset:0}.design-gallery__nav[data-v-9d38f54a]{display:flex;flex-direction:column;gap:var(--space-1)}.design-gallery__nav-link[data-v-9d38f54a]{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:500;text-decoration:none}.design-gallery__nav-link[data-v-9d38f54a]:hover{background:var(--color-primary-soft)}.design-gallery__nav-link--active[data-v-9d38f54a]{background:var(--color-primary-soft);color:var(--color-primary-strong);font-weight:700}.design-gallery__nav-link[data-v-9d38f54a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.design-gallery__nav-empty[data-v-9d38f54a]{margin:0;padding:var(--space-2) var(--space-3);color:var(--color-ink-soft);font-size:var(--type-caption-size)}.design-gallery__main[data-v-9d38f54a]{background:var(--color-surface-alt);min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-6) var(--space-5) var(--space-7)}.guide-shell[data-v-1970e39a]{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:var(--space-5);height:100%;min-height:0}.guide-shell__sidebar[data-v-1970e39a]{display:flex;flex-direction:column;gap:var(--space-4);min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-2) var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.guide-shell__sidebar-head[data-v-1970e39a]{display:grid;gap:var(--space-1)}.guide-shell__eyebrow[data-v-1970e39a]{color:var(--color-primary-strong);font-family:var(--font-display);font-size:var(--type-caption-size);font-weight:700;letter-spacing:.06em;margin:0;text-transform:uppercase}.guide-shell__subtitle[data-v-1970e39a]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-body-line);margin:0}.guide-shell__nav[data-v-1970e39a]{display:flex;flex-direction:column;gap:var(--space-1)}.guide-shell__nav-link[data-v-1970e39a]{border-radius:var(--radius-md);color:var(--color-ink);font-size:var(--type-small-size);font-weight:500;padding:var(--space-2) var(--space-3);text-decoration:none}.guide-shell__nav-link[data-v-1970e39a]:hover{background:var(--color-primary-soft)}.guide-shell__nav-link--active[data-v-1970e39a]{background:var(--color-primary-soft);color:var(--color-primary-strong);font-weight:700}.guide-shell__nav-link[data-v-1970e39a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.guide-shell__main[data-v-1970e39a]{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-2) var(--space-1) var(--space-6)}.calendar-page[data-v-16863691]{margin:0;max-width:none;min-width:0;width:100%}.calendar-page__ribbon-card[data-v-16863691]{margin-bottom:var(--space-4);overflow:hidden;padding:var(--space-3)}.calendar-page__footer[data-v-16863691]{display:flex;flex-wrap:wrap;gap:var(--space-4)}.calendar-page__copilot[data-v-16863691],.calendar-page__seeds[data-v-16863691]{flex:1;min-width:15rem}.calendar-page__hint[data-v-16863691],.calendar-page__loading[data-v-16863691],.calendar-page__error[data-v-16863691]{color:var(--color-ink-soft);font-size:var(--type-body-sm-size);margin:var(--space-3) 0 0}.calendar-page__error[data-v-16863691]{color:var(--color-negative)}.dashboard-page__column[data-v-a25c961e]{display:grid;gap:var(--space-5)}.dashboard-page__top[data-v-a25c961e]{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);justify-content:space-between}.dashboard-page__title[data-v-a25c961e]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h1-size);line-height:var(--type-h1-line);margin:0}.dashboard-page__date[data-v-a25c961e]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0;text-transform:capitalize}.dashboard-page__date-hint[data-v-a25c961e],.dashboard-page__loading[data-v-a25c961e],.dashboard-page__error[data-v-a25c961e]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0}.dashboard-page__error[data-v-a25c961e]{color:var(--color-negative)}.dashboard-page__weather-wrap[data-v-a25c961e]{display:grid;gap:var(--space-2)}.dashboard-page__weather-offline[data-v-a25c961e]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.garden-page[data-v-7b78c9fa]{display:grid;gap:var(--space-4);height:100%;min-height:0}.garden-page__error[data-v-7b78c9fa]{color:var(--color-earth);margin:0}.garden-page.is-focus .garden-page__layout[data-v-7b78c9fa]{min-height:100dvh}.garden-page__inspector-empty[data-v-7b78c9fa]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0}.garden-page__layout[data-v-7b78c9fa]{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-height:calc(100vh - 10rem);min-height:calc(100dvh - 10rem)}.garden-page__workspace[data-v-7b78c9fa]{display:flex;flex:1;gap:var(--space-2);min-height:0}.garden-page__map-stack[data-v-7b78c9fa]{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-height:0;min-width:0}.garden-page__map-row[data-v-7b78c9fa]{display:flex;flex:1;gap:var(--space-2);min-height:0;min-width:0;overflow:hidden}.garden-page__map-panel[data-v-7b78c9fa]{display:grid;flex:1;grid-template-rows:minmax(0,1fr);min-height:0;min-width:0;position:relative}.lopin-garden-map[data-v-7b78c9fa]{min-height:0;height:100%}.garden-page__culture-title[data-v-7b78c9fa]{font-family:var(--font-display);font-size:var(--type-h3-size);margin:0}.garden-page__culture-step[data-v-7b78c9fa]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0 0 var(--space-2)}.garden-page__zone-panel[data-v-7b78c9fa]{display:grid;gap:var(--space-3);min-width:0;overflow-x:hidden;width:100%}.garden-page__culture-hero[data-v-7b78c9fa]{border-radius:var(--radius-md);max-width:100%;min-width:0;overflow:hidden;width:100%}.garden-page__culture-hero-img[data-v-7b78c9fa]{display:block;height:auto;max-height:12rem;max-width:100%;object-fit:cover;width:100%}.garden-page__culture-hero-glyphs[data-v-7b78c9fa]{align-items:center;background:var(--color-surface-alt);display:flex;justify-content:center;max-width:100%;min-height:8rem;width:100%}.garden-page__recommendations[data-v-7b78c9fa]{display:grid;gap:var(--space-2)}.garden-page__recommendations-title[data-v-7b78c9fa]{font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;margin:0}.garden-page__recommendations-list[data-v-7b78c9fa]{display:grid;gap:var(--space-1);list-style:none;margin:0;padding:0}.garden-page__recommendation-btn[data-v-7b78c9fa]{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-ink);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--type-small-size);gap:var(--space-2);justify-content:space-between;min-width:0;padding:var(--space-2);text-align:left;width:100%}.garden-page__recommendation-btn[data-v-7b78c9fa]:hover:not(:disabled){border-color:var(--color-primary)}.garden-page__recommendation-btn[data-v-7b78c9fa]:disabled{cursor:wait;opacity:.7}.garden-page__recommendation-badge[data-v-7b78c9fa]{flex-shrink:0;font-size:var(--type-caption-size)}.garden-page__recommendation-badge--companion[data-v-7b78c9fa]{color:var(--color-primary)}.garden-page__recommendation-badge--antagonist[data-v-7b78c9fa]{color:var(--color-negative)}.garden-page__culture-actions[data-v-7b78c9fa]{display:flex;flex-direction:column;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);width:100%}.garden-page__culture-actions[data-v-7b78c9fa] .lopin-button,.garden-page__zone-panel[data-v-7b78c9fa]>.lopin-button{box-sizing:border-box;max-width:100%;width:100%}.garden-page__period-row[data-v-7b78c9fa]{display:grid;gap:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:100%;min-width:0}.garden-page__culture-hint[data-v-7b78c9fa]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.garden-page__culture-issues[data-v-7b78c9fa]{display:grid;gap:var(--space-1);list-style:none;margin:0;padding:0}.garden-page__culture-issue--blocking[data-v-7b78c9fa]{color:var(--color-negative);font-size:var(--type-caption-size)}.garden-page__culture-issue--warning[data-v-7b78c9fa]{color:var(--color-earth);font-size:var(--type-caption-size)}.garden-page__bed-dimensions[data-v-7b78c9fa]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-caption-size);font-variant-numeric:tabular-nums;margin:0}.garden-page__spaces-hint[data-v-7b78c9fa]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.garden-page__rename-actions[data-v-7b78c9fa]{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between}.garden-page__bed-size[data-v-7b78c9fa]{color:var(--color-ink-soft);font-size:var(--type-caption-size);padding:var(--space-1) var(--space-2)}.garden-page__sidebar-title[data-v-7b78c9fa]{font-family:var(--font-display);font-size:var(--type-h3-size);margin:0}.garden-page__space-list[data-v-7b78c9fa]{display:grid;gap:var(--space-2);list-style:none;margin:0;padding:0}.garden-page__space-btn[data-v-7b78c9fa]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:grid;gap:var(--space-1);padding:var(--space-2) var(--space-3);text-align:left;width:100%}.garden-page__space-btn.is-active[data-v-7b78c9fa]{border-color:var(--color-primary)}.garden-page__space-btn small[data-v-7b78c9fa]{color:var(--color-ink-soft)}.garden-page__create[data-v-7b78c9fa]{display:grid;gap:var(--space-2)}.garden-page__create--compact[data-v-7b78c9fa]{margin-top:var(--space-2)}.garden-page__rename[data-v-7b78c9fa]{display:grid;gap:var(--space-2)}.garden-page__zone-panel[data-v-7b78c9fa]{display:grid;gap:var(--space-2);min-width:0}.garden-page__zone-panel[data-v-7b78c9fa] .lopin-field{max-width:none;min-width:0}.garden-page__zone-panel[data-v-7b78c9fa] .lopin-field__input{font-size:var(--type-small-size);line-height:var(--type-small-line);min-height:2.25rem;padding:var(--space-1) var(--space-2)}.garden-page__zone-panel[data-v-7b78c9fa] .lopin-button{font-size:var(--type-caption-size);line-height:var(--type-caption-line);min-height:2rem;padding:var(--space-1) var(--space-2);width:100%}.garden-page__inspector-actions[data-v-7b78c9fa]{display:grid;gap:var(--space-1)}.garden-page__zone-title[data-v-7b78c9fa]{font-family:var(--font-display);font-size:var(--type-body-size);margin:0}.garden-page__zone-crop[data-v-7b78c9fa]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.garden-page__zone-crop--empty[data-v-7b78c9fa]{font-style:italic}.garden-page__plant-list[data-v-7b78c9fa]{display:grid;gap:var(--space-1);list-style:none;margin:0;max-height:10rem;overflow:auto;padding:0}.garden-page__plant-btn[data-v-7b78c9fa]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);padding:var(--space-1) var(--space-2);text-align:left;width:100%}.garden-page__plant-btn[data-v-7b78c9fa]:hover{border-color:var(--color-primary)}.garden-page__placement-hint[data-v-7b78c9fa]{font-size:var(--type-caption-size);margin:0}.garden-page__placement-hint--companion[data-v-7b78c9fa]{color:var(--color-ai)}.garden-page__placement-hint--antagonist[data-v-7b78c9fa]{color:var(--color-negative)}.garden-page__placement-hint--rotation[data-v-7b78c9fa]{color:var(--color-sun)}.garden-page__placement-hint--late[data-v-7b78c9fa]{color:var(--color-ink-soft)}.garden-page__type-label[data-v-7b78c9fa]{color:var(--color-ink-soft);display:grid;font-size:var(--type-caption-size);gap:var(--space-1)}.garden-page__type-select[data-v-7b78c9fa]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-ink);font-family:var(--font-body);padding:var(--space-2)}.garden-page__toolbar[data-v-7b78c9fa]{display:block}.garden-page__greenhouse-offset[data-v-7b78c9fa]{margin:var(--space-3) 0;max-width:16rem}.garden-page__file-input[data-v-7b78c9fa]{display:none}@media(max-width:56rem){.garden-page__layout[data-v-7b78c9fa]{grid-template-columns:1fr}}.insights-page__column[data-v-c03c9a0c]{display:grid;gap:var(--space-6)}.insights-page__count[data-v-c03c9a0c]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h3-size);line-height:var(--type-h3-line);margin:0 0 var(--space-2)}.insights-page__encouragement[data-v-c03c9a0c],.insights-page__hint[data-v-c03c9a0c]{color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:0}.insights-page__hint[data-v-c03c9a0c]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin-top:var(--space-3)}.insights-page__loading[data-v-c03c9a0c]{color:var(--color-ink-muted);margin:0}.insights-page__error[data-v-c03c9a0c]{color:var(--color-negative);margin:0}.insights-page__recap[data-v-c03c9a0c]{align-items:center;background:color-mix(in srgb,var(--color-sun) 18%,var(--color-surface));border-radius:var(--radius-md);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.insights-page__recap-copy[data-v-c03c9a0c]{color:var(--color-ink);flex:1;font-size:var(--type-small-size);line-height:var(--type-small-line);margin:0}.insights-page__recap-copy strong[data-v-c03c9a0c]{font-weight:500}.journal-page__column[data-v-d0e25982]{display:grid;gap:var(--space-4)}.journal-page__error[data-v-d0e25982]{color:var(--color-negative-text);margin:0}.journal-page__loading[data-v-d0e25982],.journal-page__hint[data-v-d0e25982],.journal-page__pending[data-v-d0e25982]{color:var(--color-ink-muted);margin:0}.login-page[data-v-fbce2174]{align-items:center;background:var(--color-bg);display:flex;justify-content:center;min-height:100%;overflow-y:auto;padding:var(--space-5)}.login-shell[data-v-fbce2174]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;max-width:57.5rem;min-height:32.5rem;overflow:hidden;width:100%}.login-hero[data-v-fbce2174]{background-color:var(--color-primary);background-position:center;background-repeat:no-repeat;background-size:cover;flex:0 0 46%;position:relative}.login-hero__caption[data-v-fbce2174]{background:linear-gradient(transparent,color-mix(in srgb,var(--color-ink) 45%,transparent));bottom:0;color:var(--color-primary-soft);left:0;padding:var(--space-6) var(--space-5);position:absolute;right:0}.login-hero__title[data-v-fbce2174]{font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:500;line-height:var(--type-h2-line);margin:0}.login-hero__lead[data-v-fbce2174]{font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:var(--space-1) 0 0;opacity:.9}.login-form-panel[data-v-fbce2174]{flex:1;padding:var(--space-5) var(--space-6)}.login-wordmark[data-v-fbce2174]{color:var(--color-primary-strong);font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:500;line-height:var(--type-h2-line);margin:0 0 var(--space-5)}.login-title[data-v-fbce2174]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h1-size);font-weight:500;line-height:var(--type-h1-line);margin:0}.login-sub[data-v-fbce2174]{color:var(--color-ink-soft);font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);margin:var(--space-1) 0 var(--space-5)}.login-form[data-v-fbce2174]{display:grid;gap:0;max-width:36ch}.login-label[data-v-fbce2174]{color:var(--color-ink);display:block;font-family:var(--font-body);font-size:var(--type-small-size);font-weight:500;line-height:var(--type-small-line);margin:0 0 var(--space-2)}.login-field[data-v-fbce2174]{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3);transition:border-color var(--motion-micro) var(--ease-standard)}.login-field[data-v-fbce2174]:focus-within{border-color:var(--color-primary)}.login-field__icon[data-v-fbce2174]{color:var(--color-ink-soft);flex-shrink:0}.login-field__input[data-v-fbce2174]{background:transparent;border:0;color:var(--color-ink);flex:1;font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line);min-width:0;outline:none;padding:0}.login-field__input[data-v-fbce2174]:-webkit-autofill,.login-field__input[data-v-fbce2174]:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-ink);box-shadow:0 0 0 1000px var(--color-surface) inset;caret-color:var(--color-ink);transition:background-color 99999s ease-out 0s}.login-field__toggle[data-v-fbce2174]{flex-shrink:0;margin:calc(-1 * var(--space-1))}.login-error[data-v-fbce2174]{color:var(--color-negative-text);font-size:var(--type-small-size);margin:0 0 var(--space-4)}.login-cta-wrap[data-v-fbce2174]{margin-top:var(--space-2)}.login-cta-wrap[data-v-fbce2174] .lopin-button{width:100%}.login-reassure[data-v-fbce2174]{align-items:center;color:var(--color-ink-soft);display:flex;font-family:var(--font-body);font-size:var(--type-caption-size);gap:var(--space-2);justify-content:center;line-height:var(--type-caption-line);margin:var(--space-4) 0 0}@media(max-width:680px){.login-shell[data-v-fbce2174]{flex-direction:column;min-height:auto}.login-hero[data-v-fbce2174]{flex:0 0 10rem}.login-form-panel[data-v-fbce2174]{padding:var(--space-5)}.login-form[data-v-fbce2174]{max-width:none}}.plant-culture-fields[data-v-2db55cf0]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);overflow:hidden}.lopin-field-incomplete-dot[data-v-2db55cf0]{background:var(--color-warning);border-radius:50%;display:inline-block;flex:none;height:6px;width:6px}.plant-detail-page__select[data-v-2db55cf0],.plant-detail-page__textarea[data-v-2db55cf0]{display:grid;gap:var(--space-2);max-width:40ch;width:100%}.plant-detail-page__select select[data-v-2db55cf0],.plant-detail-page__textarea textarea[data-v-2db55cf0]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);min-height:44px;padding:var(--space-2) var(--space-3)}.lopin-plant-culture-field[data-v-2db55cf0]{position:relative}.lopin-plant-culture-field.is-audit-accept[data-accept-phase=highlight][data-v-2db55cf0]{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-ai) 50%,transparent);border-radius:var(--radius-md);transition:box-shadow .25s ease}.lopin-plant-culture-field.is-audit-accept[data-accept-phase=blank][data-v-2db55cf0] input,.lopin-plant-culture-field.is-audit-accept[data-accept-phase=blank][data-v-2db55cf0] select,.lopin-plant-culture-field.is-audit-accept[data-accept-phase=blank][data-v-2db55cf0] textarea,.lopin-plant-culture-field.is-audit-accept[data-accept-phase=blank][data-v-2db55cf0] .lopin-month-strip,.lopin-plant-culture-field.is-audit-accept[data-accept-phase=blank][data-v-2db55cf0] .lopin-month-picker{opacity:.28;transition:opacity .2s ease}.lopin-plant-culture-field.is-audit-accept[data-accept-phase=typing][data-v-2db55cf0] input,.lopin-plant-culture-field.is-audit-accept[data-accept-phase=typing][data-v-2db55cf0] select,.lopin-plant-culture-field.is-audit-accept[data-accept-phase=typing][data-v-2db55cf0] textarea{border-color:var(--color-ai);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-ai) 22%,transparent)}.lopin-plant-culture-field__empty[data-v-2db55cf0]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:0}.plant-detail-hero__photo-input[data-v-e26b5f13]{display:none}.plant-detail-page[data-v-51db8b3a]{display:grid;gap:var(--space-5);width:100%}.plant-detail-page__layout[data-v-51db8b3a]{align-items:start;display:grid;gap:var(--space-5);grid-template-columns:minmax(14rem,18rem) minmax(0,1fr) minmax(14rem,16rem)}.plant-detail-page__workspace[data-v-51db8b3a]{min-width:0}.plant-detail-page__sidebar-sticky[data-v-51db8b3a],.plant-detail-page__rail[data-v-51db8b3a]{align-self:start;display:grid;gap:var(--space-4);max-height:calc(var(--app-shell-main-scroll-height, 100dvh) - 2 * var(--space-6));min-width:0;overflow-y:auto;overscroll-behavior:contain;position:sticky;top:0}.plant-detail-page__rail-placeholder[data-v-51db8b3a]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:0}.plant-detail-page__tab-subtitle[data-v-51db8b3a]{color:var(--color-ink-muted);font-size:var(--type-caption-size);margin:calc(var(--space-1) * -1) 0 var(--space-2)}.plant-detail-page__title-with-explainer[data-v-51db8b3a]{align-items:center;display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}@media(max-width:1100px){.plant-detail-page__layout[data-v-51db8b3a]{grid-template-columns:1fr}.plant-detail-page__sidebar-sticky[data-v-51db8b3a],.plant-detail-page__rail[data-v-51db8b3a]{max-height:none;overflow:visible;position:static}}.plant-detail-page__create-bar[data-v-51db8b3a]{display:flex;justify-content:flex-end}.plant-detail-page__loading[data-v-51db8b3a]{color:var(--color-ink-muted);margin:0}.plant-detail-page__section[data-v-51db8b3a]{margin-top:var(--space-4)}.plant-detail-page__source-mode[data-v-51db8b3a]{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.plant-detail-page__mode-btn[data-v-51db8b3a]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;font:inherit;padding:var(--space-2) var(--space-3)}.plant-detail-page__mode-btn.is-active[data-v-51db8b3a]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong)}.plant-detail-page__source[data-v-51db8b3a]{display:grid;gap:var(--space-3)}.plant-detail-page__source-error[data-v-51db8b3a]{background:var(--color-negative-soft-bg);border:1px solid var(--color-negative);border-radius:var(--radius-md);color:var(--color-negative-text);font-size:var(--type-small-size);margin-top:var(--space-3);padding:var(--space-3)}.plant-detail-page__source-error-title[data-v-51db8b3a]{font-weight:700;margin:0 0 var(--space-2)}.plant-detail-page__source-error p[data-v-51db8b3a]{margin:var(--space-1) 0}.plant-detail-page__photo[data-v-51db8b3a]{display:grid;gap:var(--space-3);margin-bottom:var(--space-4)}.plant-detail-page__photo-preview[data-v-51db8b3a]{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;height:160px;justify-content:center;overflow:hidden;width:160px}.plant-detail-page__photo-preview img[data-v-51db8b3a]{height:100%;object-fit:cover;width:100%}.plant-detail-page__photo-glyph[data-v-51db8b3a]{font-family:var(--font-display);font-size:3rem}.plant-detail-page__photo-actions[data-v-51db8b3a]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.plant-detail-page__fields[data-v-51db8b3a]{display:grid;gap:var(--space-4)}.plant-detail-page__verdict[data-v-51db8b3a]{display:grid;gap:var(--space-2)}.plant-detail-page__verdict-label[data-v-51db8b3a]{margin:0;font:var(--font-label-sm);color:var(--color-text-muted)}.plant-detail-page__verdict-value[data-v-51db8b3a]{margin:0;font:var(--font-title-md);color:var(--color-text)}.plant-detail-page__plantnet-link[data-v-51db8b3a]{color:var(--color-accent);font:var(--font-body-sm);text-decoration:underline;width:fit-content}.plant-detail-page__fields[data-v-51db8b3a] .lopin-field,.plant-detail-page__select[data-v-51db8b3a],.plant-detail-page__textarea[data-v-51db8b3a]{max-width:40ch}.plant-detail-page__field-row[data-v-51db8b3a]{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--space-3)}.plant-detail-page__select[data-v-51db8b3a],.plant-detail-page__textarea[data-v-51db8b3a]{display:grid;gap:var(--space-2);max-width:36ch;width:100%}.plant-detail-page__label-row[data-v-51db8b3a]{align-items:center;display:inline-flex;gap:var(--space-1)}.plant-detail-page__select span[data-v-51db8b3a],.plant-detail-page__textarea span[data-v-51db8b3a]{color:var(--color-ink);font-size:var(--type-small-size);font-weight:600}.plant-detail-page__select select[data-v-51db8b3a],.plant-detail-page__textarea textarea[data-v-51db8b3a]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font:inherit;min-height:44px;padding:var(--space-2) var(--space-3)}.plant-detail-page__chip-list[data-v-51db8b3a]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.plant-detail-page__companions[data-v-51db8b3a]{display:grid;gap:var(--space-3)}.plant-detail-page__assoc-group[data-v-51db8b3a]{font-family:var(--font-body);font-size:var(--type-caption-size);font-weight:600;margin:0}.plant-detail-page__assoc-group--pos[data-v-51db8b3a]{color:var(--color-positive-text)}.plant-detail-page__assoc-group--neg[data-v-51db8b3a]{color:var(--color-negative-text)}.plant-detail-page__history[data-v-51db8b3a]{display:grid;gap:var(--space-3);list-style:none;margin:0;padding:0}.plant-detail-page__history li[data-v-51db8b3a]{border-bottom:1px solid var(--color-border);display:grid;gap:var(--space-1);padding-bottom:var(--space-2)}.plant-detail-page__history time[data-v-51db8b3a]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.plant-detail-page__history-empty[data-v-51db8b3a]{color:var(--color-ink-soft);margin:0}.plant-detail-page__field-row[data-ai-suggested=true][data-v-51db8b3a] .lopin-field__input{border-color:var(--color-ai);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-ai) 24%,transparent)}.plants-page[data-v-f7a85b5d]{display:grid;gap:var(--space-5);width:100%;background:var(--color-bg)}.plants-page__header[data-v-f7a85b5d]{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.plants-page__title[data-v-f7a85b5d]{margin:0;font:var(--font-title-lg);color:var(--color-text)}.plants-page__lead[data-v-f7a85b5d]{margin:var(--space-2) 0 0;color:var(--color-text-muted)}.plants-page__actions[data-v-f7a85b5d]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.plants-page__error[data-v-f7a85b5d]{margin:0;color:var(--color-danger)}.plants-page__quick-add[data-v-f7a85b5d]{border:none;padding:0;background:transparent;max-width:min(100%,28rem);margin:0 auto}.plants-page__quick-add[data-v-f7a85b5d]::backdrop{background:color-mix(in srgb,var(--color-bg-inverse) 40%,transparent)}.plants-page__quick-add-form[data-v-f7a85b5d]{display:grid;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border)}.plants-page__quick-add-title[data-v-f7a85b5d]{margin:0;font:var(--font-title-md)}.plants-page__quick-add-lead[data-v-f7a85b5d]{margin:0;color:var(--color-text-muted);font:var(--font-body-sm)}.plants-page__quick-add-family[data-v-f7a85b5d],.plants-page__quick-add-photo[data-v-f7a85b5d]{display:grid;gap:var(--space-2);font:var(--font-body-sm)}.plants-page__quick-add-family select[data-v-f7a85b5d]{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg)}.plants-page__quick-add-actions[data-v-f7a85b5d]{display:flex;justify-content:flex-end;gap:var(--space-3)}.settings-page__column[data-v-2767368c]{padding:var(--space-4) var(--space-3) var(--space-6)}.settings-page__header[data-v-2767368c]{margin-bottom:var(--space-5)}.settings-page__title[data-v-2767368c]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:500;line-height:var(--type-h2-line);margin:0}.settings-page__subtitle[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:var(--space-1) 0 0}.settings-card--app[data-v-2767368c]{padding-bottom:var(--space-3)}.settings-app__desc[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0 0 var(--space-3)}.settings-app__actions[data-v-2767368c]{margin-bottom:var(--space-2)}.settings-app__status[data-v-2767368c],.settings-app__meta[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.settings-app__manual-lead[data-v-2767368c]{color:var(--color-ink);font-size:var(--type-small-size);margin:0 0 var(--space-2)}.settings-app__manual-steps[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0;padding-left:var(--space-4)}.settings-card[data-v-2767368c]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);padding:var(--space-1) var(--space-4)}.settings-card--climate[data-v-2767368c],.settings-card--password[data-v-2767368c]{padding-bottom:var(--space-3)}.settings-password__desc[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0 0 var(--space-3)}.settings-password-fields[data-v-2767368c]{display:grid;gap:var(--space-3);margin-bottom:var(--space-3)}.settings-password-field[data-v-2767368c]{display:grid;gap:var(--space-1)}.settings-password-field__label[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.settings-password-input[data-v-2767368c]{align-items:center;display:flex;gap:var(--space-1)}.settings-password-input__field[data-v-2767368c]{flex:1;min-width:0}.settings-password-input__toggle[data-v-2767368c]{flex-shrink:0}.settings-password-save[data-v-2767368c]{display:flex;justify-content:flex-end;margin-bottom:var(--space-2)}.settings-message--error[data-v-2767368c]{color:var(--color-negative-text)}.settings-card--status[data-v-2767368c]{padding-bottom:var(--space-2)}.settings-status-row[data-v-2767368c]{align-items:center;display:flex;font-size:var(--type-small-size);justify-content:space-between;padding:var(--space-2) 0}.settings-status-row+.settings-status-row[data-v-2767368c]{border-top:1px solid var(--color-border)}.settings-status-row__label[data-v-2767368c]{color:var(--color-ink-soft)}.settings-status-row__value[data-v-2767368c]{color:var(--color-ink)}.settings-status-row__value--ok[data-v-2767368c]{color:var(--color-primary-strong)}.settings-status-row__value--warn[data-v-2767368c]{color:var(--color-heat)}.settings-card__section-header[data-v-2767368c]{align-items:center;color:var(--color-ink);display:flex;font-size:var(--type-body-size);font-weight:600;gap:var(--space-2);margin:0;padding:var(--space-4) 0 var(--space-2)}.settings-row[data-v-2767368c]{align-items:center;display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-4) 0}.settings-row+.settings-row[data-v-2767368c]{border-top:1px solid var(--color-border)}.settings-row__text[data-v-2767368c]{min-width:0}.settings-row__label[data-v-2767368c]{color:var(--color-ink);font-size:var(--type-body-size);line-height:var(--type-body-line);margin:0}.settings-row__desc[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:var(--space-1) 0 0}.settings-input[data-v-2767368c]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line);min-height:44px;padding:var(--space-2) var(--space-3);width:100%}.settings-input[data-v-2767368c]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.settings-climate-address[data-v-2767368c]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.settings-climate-address__field[data-v-2767368c]{flex:1 1 12rem;min-width:0}.settings-climate-grid[data-v-2767368c]{display:grid;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:var(--space-3)}.settings-climate-field[data-v-2767368c]{display:grid;gap:var(--space-1)}.settings-climate-field__label[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.settings-climate-save[data-v-2767368c]{display:flex;justify-content:flex-end;margin-bottom:var(--space-2)}.settings-message[data-v-2767368c]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0 0 var(--space-2)}.settings-foot[data-v-2767368c]{display:flex;justify-content:flex-end;margin-top:var(--space-5)}@media(max-width:36rem){.settings-climate-grid[data-v-2767368c]{grid-template-columns:1fr}.settings-row[data-v-2767368c]{align-items:flex-start;flex-direction:column}}.trials-page__column[data-v-b68f4591]{padding:var(--space-4) var(--space-3) var(--space-6)}.trials-page__header[data-v-b68f4591]{margin-bottom:var(--space-5)}.trials-page__title[data-v-b68f4591]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:500;line-height:var(--type-h2-line);margin:0}.trials-page__subtitle[data-v-b68f4591]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:var(--space-1) 0 0}.trials-page__error[data-v-b68f4591]{color:var(--color-negative-text);font-size:var(--type-small-size)}.trials-page__loading[data-v-b68f4591]{color:var(--color-ink-soft)}.trials-page__grid[data-v-b68f4591]{display:grid;gap:var(--space-4)}@media(min-width:56rem){.trials-page__grid[data-v-b68f4591]{grid-template-columns:minmax(0,20rem) minmax(0,1fr)}}.trials-page__aside[data-v-b68f4591]{display:grid;gap:var(--space-4)}.trials-page__list[data-v-b68f4591]{display:grid;gap:var(--space-2);list-style:none;margin:0;padding:0}.trials-page__list-item[data-v-b68f4591]{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:grid;gap:var(--space-1);padding:var(--space-3);text-align:left;width:100%}.trials-page__list-item--active[data-v-b68f4591]{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-soft)}.trials-page__list-hypothesis[data-v-b68f4591]{color:var(--color-ink);font-size:var(--type-small-size)}.trials-page__list-meta[data-v-b68f4591]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.trials-page__detail[data-v-b68f4591]{display:grid;gap:var(--space-4)}.trials-page__detail-meta[data-v-b68f4591]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0}.trials-page__detail-actions[data-v-b68f4591]{display:flex;justify-content:flex-end;margin-top:var(--space-2)}.guide-live-demo[data-v-5894a735]{display:grid;gap:var(--space-3)}.guide-live-demo__row[data-v-5894a735]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.guide-topic[data-v-7468787a]{display:grid;gap:var(--space-6);max-width:42rem}.guide-topic__header[data-v-7468787a]{display:grid;gap:var(--space-2)}.guide-topic__title[data-v-7468787a]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h1-size);line-height:var(--type-h1-line);margin:0}.guide-topic__lead[data-v-7468787a]{color:var(--color-ink-soft);font-size:var(--type-body-size);line-height:var(--type-body-line);margin:0}.guide-topic__section[data-v-7468787a]{display:grid;gap:var(--space-3)}.guide-topic__heading[data-v-7468787a]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin:0}.guide-topic__body[data-v-7468787a]{color:var(--color-ink);font-size:var(--type-body-size);line-height:var(--type-body-line);margin:0}.guide-topic__checklist[data-v-7468787a],.guide-topic__steps[data-v-7468787a],.guide-topic__tips[data-v-7468787a]{color:var(--color-ink);display:grid;font-size:var(--type-body-size);gap:var(--space-2);line-height:var(--type-body-line);margin:0;padding-left:var(--space-5)}.guide-topic__checklist-link[data-v-7468787a]{color:var(--color-primary-strong);font-weight:600;text-decoration:none}.guide-topic__checklist-link[data-v-7468787a]:hover{text-decoration:underline}.guide-topic__checklist-link[data-v-7468787a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}.guide-topic__step-block[data-v-7468787a]{display:grid;gap:var(--space-2)}.guide-topic__step-title[data-v-7468787a]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);font-weight:700;line-height:var(--type-body-line);margin:0}.guide-topic__live[data-v-7468787a]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:grid;gap:var(--space-3);padding:var(--space-4)}.guide-topic__live-caption[data-v-7468787a]{color:var(--color-ink-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);margin:0}.guide-topic__missing[data-v-7468787a]{color:var(--color-ink-soft);margin:0}.weather-page__column[data-v-0b3db174]{display:grid;gap:var(--space-5);max-width:760px}.weather-page__nav[data-v-0b3db174]{margin:0}.weather-page__back[data-v-0b3db174]{text-decoration:none}.weather-page__status[data-v-0b3db174],.weather-page__error[data-v-0b3db174],.weather-page__offline[data-v-0b3db174]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0}.weather-page__error[data-v-0b3db174]{color:var(--color-negative)}.weather-page__head[data-v-0b3db174]{align-items:flex-start;display:flex;gap:var(--space-4);justify-content:space-between}.weather-page__title[data-v-0b3db174]{color:var(--color-ink);font-family:var(--font-display);font-size:var(--type-h2-size);font-weight:500;line-height:var(--type-h2-line);margin:0}.weather-page__subtitle[data-v-0b3db174]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:var(--space-1) 0 0;text-transform:capitalize}.weather-page__now[data-v-0b3db174]{font-family:var(--font-display);font-size:calc(var(--type-h1-size) * 1.1);font-weight:500;line-height:1;margin:0}.weather-page__section-label[data-v-0b3db174]{color:var(--color-ink-faint);font-size:var(--type-caption-size);font-weight:600;letter-spacing:.04em;margin:0 0 var(--space-2);text-transform:uppercase}.weather-page__section-label span[data-v-0b3db174]{color:var(--color-ink-soft);font-weight:400;text-transform:none}.weather-page__panel[data-v-0b3db174]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.weather-page__empty[data-v-0b3db174]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:0}.weather-page__stats[data-v-0b3db174]{display:flex;flex-wrap:wrap;gap:var(--space-3)}.weather-page__stat[data-v-0b3db174]{background:var(--color-surface-alt);border-radius:var(--radius-md);display:grid;flex:1;gap:var(--space-1);min-width:92px;padding:var(--space-3)}.weather-page__stat-label[data-v-0b3db174]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.weather-page__stat-value[data-v-0b3db174]{color:var(--color-ink);font-size:var(--type-h3-size);font-weight:500}.weather-page__gfs[data-v-0b3db174]{display:flex;flex-wrap:wrap;gap:var(--space-3)}.weather-page__gfs-card[data-v-0b3db174]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);display:grid;flex:1;gap:var(--space-1);min-width:92px;padding:var(--space-3);text-align:center}.weather-page__gfs-label[data-v-0b3db174]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.weather-page__gfs-temp[data-v-0b3db174]{font-size:var(--type-h3-size);font-weight:500}.weather-page__gfs-meta[data-v-0b3db174]{color:var(--color-ink-faint);font-size:var(--type-caption-size)}.weather-page__synthesis[data-v-0b3db174]{color:var(--color-ink-soft);font-size:var(--type-small-size);margin:var(--space-3) 0 0}.gallery-demo[data-v-83611689]{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:grid;gap:var(--space-4);padding:var(--space-4)}.gallery-demo__head[data-v-83611689]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between}.gallery-demo__title[data-v-83611689]{font-family:var(--font-display);font-size:var(--type-small-size);font-weight:600;margin:0}.gallery-demo__replay[data-v-83611689]{background:var(--color-surface-alt);border:thin solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--type-caption-size);min-height:32px;padding:0 var(--space-3)}.gallery-demo__replay[data-v-83611689]:hover{border-color:var(--color-primary)}.gallery-demo__body[data-v-83611689]{display:grid;gap:var(--space-3)}.gallery-view[data-v-1e740221]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-1e740221]{color:var(--color-ink)}.gallery-view__lead[data-v-1e740221]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-1e740221]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-1e740221]{align-items:flex-end}.gallery-view__tab-panels[data-v-1e740221]{min-height:3rem}.gallery-view__tab-panel[data-v-1e740221]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-1e740221]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.charts-view__grid[data-v-1e740221]{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}.charts-view__progress-row[data-v-1e740221]{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--space-4);width:100%}.charts-view__ring[data-v-1e740221]{color:var(--color-ink);display:grid;flex:none;font-family:var(--font-body);grid-template-areas:"ring";place-items:center;width:140px}.charts-view__ring-track[data-v-1e740221],.charts-view__ring-center[data-v-1e740221]{grid-area:ring}.charts-view__ring-center[data-v-1e740221]{align-items:center;display:flex;flex-direction:column;gap:var(--space-1);justify-content:center;pointer-events:none;text-align:center}.charts-view__ring-value[data-v-1e740221]{font-size:var(--type-h2-size);font-weight:700;line-height:1}.charts-view__ring-label[data-v-1e740221]{color:var(--color-ink-soft);font-size:var(--type-caption-size)}.charts-view__bar[data-v-1e740221]{display:grid;flex:1;gap:var(--space-2);min-width:min(100%,220px)}.charts-view__bar-label[data-v-1e740221]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-small-size);font-weight:600;margin:0}.charts-view__bar-track[data-v-1e740221]{border-radius:var(--radius-pill);width:100%}.charts-view__chart-panel[data-v-1e740221]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);width:100%}.charts-view__chart-panel--donut[data-v-1e740221]{max-width:420px}.gallery-view[data-v-280ac1d0]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-280ac1d0]{color:var(--color-ink)}.gallery-view__lead[data-v-280ac1d0]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-280ac1d0]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-280ac1d0]{align-items:flex-end}.gallery-view__tab-panels[data-v-280ac1d0]{min-height:3rem}.gallery-view__tab-panel[data-v-280ac1d0]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-280ac1d0]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.gallery-gamification-milestones[data-v-280ac1d0]{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}.gallery-view[data-v-f63aa6e2]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-f63aa6e2]{color:var(--color-ink)}.gallery-view__lead[data-v-f63aa6e2]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-f63aa6e2]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-f63aa6e2]{align-items:flex-end}.gallery-view__tab-panels[data-v-f63aa6e2]{min-height:3rem}.gallery-view__tab-panel[data-v-f63aa6e2]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-f63aa6e2]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.gallery-view[data-v-3e0b4410]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-3e0b4410]{color:var(--color-ink)}.gallery-view__lead[data-v-3e0b4410]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-3e0b4410]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-3e0b4410]{align-items:flex-end}.gallery-view__tab-panels[data-v-3e0b4410]{min-height:3rem}.gallery-view__tab-panel[data-v-3e0b4410]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-3e0b4410]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.gallery-view__caption[data-v-3e0b4410]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0 0 var(--space-2)}.gallery-view__map-first[data-v-3e0b4410]{display:flex;gap:var(--space-2);min-height:12rem}.gallery-view__map-first-main[data-v-3e0b4410]{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-width:0}.gallery-view__map-first-row[data-v-3e0b4410]{display:flex;flex:1;gap:var(--space-2);min-height:8rem}.gallery-view__map-first-canvas[data-v-3e0b4410]{background:var(--color-surface-alt);border:1px dashed var(--color-border);border-radius:var(--radius-md);flex:1;min-width:0}.gallery-lod-zoom[data-v-3e0b4410]{align-items:center;display:flex;gap:var(--space-3);margin-bottom:var(--space-2)}.gallery-lod-zoom__label[data-v-3e0b4410]{color:var(--color-ink-soft);font-size:var(--type-caption-size);min-width:8rem}.gallery-lod-zoom input[type=range][data-v-3e0b4410]{accent-color:var(--color-primary);flex:1;max-width:20rem}.gallery-plant-dots__controls[data-v-3e0b4410]{margin-bottom:var(--space-2)}.gallery-plant-dots__grid[data-v-3e0b4410]{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.gallery-plant-dots__label[data-v-3e0b4410]{color:var(--color-ink-soft);font-size:var(--type-caption-size);margin:0 0 var(--space-1)}.gallery-plant-dots__panel[data-v-3e0b4410]{min-width:0}.gallery-view[data-v-714b1a79]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-714b1a79]{color:var(--color-ink)}.gallery-view__lead[data-v-714b1a79]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-714b1a79]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-714b1a79]{align-items:flex-end}.gallery-view__tab-panels[data-v-714b1a79]{min-height:3rem}.gallery-view__tab-panel[data-v-714b1a79]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-714b1a79]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.gallery-view__row--icons[data-v-714b1a79]{align-items:flex-end}.icons-view__glyph[data-v-714b1a79]{align-items:center;color:var(--color-ink-soft);display:grid;font-size:var(--type-caption-size);gap:var(--space-1);justify-items:center}.gallery-view[data-v-6596a7bc]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-6596a7bc]{color:var(--color-ink)}.gallery-view__lead[data-v-6596a7bc]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-6596a7bc]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-6596a7bc]{align-items:flex-end}.gallery-view__tab-panels[data-v-6596a7bc]{min-height:3rem}.gallery-view__tab-panel[data-v-6596a7bc]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-6596a7bc]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}.gallery-view[data-v-de1ac8cc]{display:flex;flex-direction:column;gap:var(--space-4)}.gallery-view__title[data-v-de1ac8cc]{color:var(--color-ink)}.gallery-view__lead[data-v-de1ac8cc]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-body-line)}.gallery-view__row[data-v-de1ac8cc]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.gallery-view__row--progress[data-v-de1ac8cc]{align-items:flex-end}.gallery-view__tab-panels[data-v-de1ac8cc]{min-height:3rem}.gallery-view__tab-panel[data-v-de1ac8cc]{margin:0;color:var(--color-ink-soft);font-size:var(--type-small-size)}.gallery-view__title[data-v-de1ac8cc]{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--type-h2-size);line-height:var(--type-h2-line)}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg: #f1eadd;--color-surface: #fbf7ef;--color-bg-inverse: #2c2a26;--color-surface-alt: #ede5d5;--color-border: #e0d8c8;--color-ink: #2c2a26;--color-ink-soft: #5c584f;--color-ink-muted: #78736a;--color-ink-faint: #948f86;--color-text: var(--color-ink);--color-text-muted: var(--color-ink-muted);--color-primary: #4e7a3d;--color-primary-strong: #3c5f30;--color-primary-soft: #d7e4c4;--color-accent: var(--color-earth);--color-earth: #b5613f;--color-sun: #e0982f;--color-sky: #5e8eae;--color-positive: #3e8e5a;--color-positive-text: #2f6e45;--color-positive-soft-bg: #e7f1e6;--color-negative: #b4533b;--color-negative-text: #97402b;--color-negative-soft-bg: #f6e6e1;--color-danger: var(--color-negative);--color-frost: #3f7ba0;--color-heat: #c9741f;--color-warning: var(--color-heat);--color-warning-soft: #f5e4c4;--color-ai: #7a5fa6;--color-ai-soft-bg: #efe9f6;--heat-frost: #3f7ba0;--heat-cold: #5e8eae;--heat-mild: #639922;--heat-warm: #e0982f;--heat-hot: #c8771f;--heat-very-hot: #b4533b;--heat-extreme: #8e2d55;--font-display: "Fraunces", "Recoleta", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: var(--font-sans);--font-title-lg: 600 var(--type-h1-size) / var(--type-h1-line) var(--font-display);--font-title-md: 600 var(--type-h2-size) / var(--type-h2-line) var(--font-display);--font-body-sm: var(--type-small-size) / var(--type-small-line) var(--font-sans);--font-label-sm: 600 var(--type-caption-size) / var(--type-caption-line) var(--font-sans);--type-display-size: 32px;--type-display-line: 38px;--type-h1-size: 24px;--type-h1-line: 30px;--type-h2-size: 20px;--type-h2-line: 26px;--type-h3-size: 18px;--type-h3-line: 24px;--type-h4-size: 16px;--type-body-size: 16px;--type-body-sm-size: 14px;--type-body-line: 24px;--type-small-size: 14px;--type-small-line: 20px;--type-caption-size: 12px;--type-caption-line: 16px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-pill: 999px;--shadow-soft: 0 2px 8px rgb(44 42 38 / 8%);--shadow-md: 0 3px 12px rgb(44 42 38 / 10%);--shadow-lift: 0 4px 16px rgb(44 42 38 / 12%);--shadow-lg: 0 8px 24px rgb(44 42 38 / 14%);--z-overlay: 40;--control-min-height: 42px;--border-width-hairline: 1px;--focus-ring-width: 3px;--zone-fill-1: #efe7d8;--zone-fill-2: #e7decb;--bed-fill: var(--color-positive-soft-bg);--bed-fill-stripe: var(--color-primary-soft);--zone-selected: rgb(78 122 61 / 10%);--zone-dot-size: .03;--guide: #d453a0;--dim-ink: var(--color-ink);--bed-stroke: 1.5px;--zone-stroke: 1px;--handle-size: 8px;--handle-mid-size: 9px;--motion-instant: 0ms;--motion-micro: .1s;--motion-small: 175ms;--motion-standard: var(--motion-small);--motion-medium: .28s;--motion-large: .42s;--motion-ambient: .6s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-enter: cubic-bezier(0, 0, 0, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1);--garden-rail-width: 120px;--garden-inspector-width: 200px}:root[data-theme=dark]{--color-bg: #1a1916;--color-surface: #242220;--color-surface-alt: #2e2b28;--color-border: #3d3934;--color-ink: #f5f0e8;--color-ink-soft: #c9c2b8;--color-ink-muted: #a9a399;--color-ink-faint: #8f897f;--color-warning-soft: #3d3420;--color-bg-inverse: #f5f0e8;--color-primary: #6b9a58;--color-primary-strong: #8bb878;--color-primary-soft: #2a3d24;--bed-fill: var(--color-positive-soft-bg);--bed-fill-stripe: var(--color-primary-soft);--color-positive-soft-bg: #1e3324;--color-negative-soft-bg: #3d2420;--color-ai-soft-bg: #2d2640;--shadow-soft: 0 2px 8px rgb(0 0 0 / 24%);--shadow-lift: 0 4px 16px rgb(0 0 0 / 32%)}html[data-reduced-motion=true] *,html[data-reduced-motion=true] *:before,html[data-reduced-motion=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{box-sizing:border-box}html{height:100%}body{margin:0;height:100%;overflow:hidden;background:var(--color-bg);color:var(--color-ink);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-line)}#app{height:100%}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:var(--color-surface);box-shadow:var(--shadow-soft)}.app-nav{display:flex;gap:var(--space-3)}.app-nav-link{color:var(--color-primary-strong);font-size:var(--type-small-size);font-weight:600;text-decoration:none}.app-nav-link:hover{text-decoration:underline}.app-title{margin:0;font-family:var(--font-display);font-size:var(--type-h1-size);line-height:var(--type-h1-line);color:var(--color-primary-strong)}.app-main{flex:1;max-width:40rem;margin:0 auto;padding:var(--space-7) var(--space-6)}.app-card{padding:var(--space-6);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.app-lead{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:var(--type-h1-size);line-height:var(--type-h1-line)}.app-body{margin:0 0 var(--space-5);color:var(--color-ink-soft);font-size:var(--type-body-size);line-height:var(--type-body-line)}.app-install{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-surface);font-family:var(--font-body);font-size:var(--type-small-size);line-height:var(--type-small-line);cursor:pointer}.app-install:focus-visible{box-shadow:0 0 0 var(--space-2) var(--color-primary-soft)}.app-install[hidden]{display:none}.app-status{margin-top:var(--space-4);color:var(--color-ink-soft);font-size:var(--type-small-size);line-height:var(--type-small-line)}.lopin-page-shell{display:flex;justify-content:center;padding:0 var(--space-4) var(--space-6);width:100%}.lopin-page-column{max-width:60rem;width:100%}.lopin-page-column--narrow{max-width:40rem}:root{--ease-spring-snappy: cubic-bezier(.34, 1.25, .64, 1);--ease-spring-playful: cubic-bezier(.34, 1.45, .64, 1)}.lopin-reka-content{background:var(--color-surface);border:thin solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lift);z-index:50}.lopin-reka-overlay{background:#2c2a2652;inset:0;position:fixed;z-index:40}.lopin-reka-item[data-highlighted]{background:var(--color-primary-soft);outline:none}.lopin-reka-item[data-state=checked]{color:var(--color-primary-strong);font-weight:600}
