.dialog-overlay[data-v-dbe29a27]{animation:dialog-fade-dbe29a27 .2s var(--ease-apple)}.dialog-panel[data-v-dbe29a27]{animation:dialog-rise-dbe29a27 .26s var(--ease-apple)}@keyframes dialog-fade-dbe29a27{0%{opacity:0}to{opacity:1}}@keyframes dialog-rise-dbe29a27{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.dialog-close[data-v-dbe29a27]:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.apple-switch[data-v-a2ae18ef]{width:44px;height:24px;background:var(--border-strong, rgba(120, 120, 128, .28));border-radius:999px;position:relative;border:0;padding:2px;cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1);display:inline-flex;align-items:center;flex-shrink:0;outline:none}.apple-switch[data-v-a2ae18ef]:focus-visible{box-shadow:0 0 0 2px var(--background, #ffffff),0 0 0 4px var(--primary, #0071e3)}.apple-switch[data-state=checked][data-v-a2ae18ef]{background:#34c759}.apple-switch[data-v-a2ae18ef]:disabled{opacity:.5;cursor:not-allowed}.apple-switch-thumb[data-v-a2ae18ef]{display:block;width:20px;height:20px;background:#fff;border-radius:999px;box-shadow:0 2px 4px #0003;transition:transform .2s cubic-bezier(.16,1,.3,1);transform:translate(0);will-change:transform;pointer-events:none}.apple-switch-thumb[data-state=checked][data-v-a2ae18ef]{transform:translate(20px)}.segmented[data-v-6fae9314]{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:var(--muted)}.segment[data-v-6fae9314]{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;line-height:1;white-space:nowrap;transition:background-color .3s var(--ease-apple),color .3s var(--ease-apple),box-shadow .3s var(--ease-apple),transform .2s var(--ease-apple)}.segment[data-v-6fae9314]:hover:not(.active){color:var(--foreground)}.segment.active[data-v-6fae9314]{background:var(--surface);color:var(--foreground);box-shadow:var(--shadow-sm)}.segment[data-v-6fae9314]:active{transform:scale(.98)}.segment[data-v-6fae9314]:disabled{opacity:.4;cursor:default}.segmented.sm[data-v-6fae9314]{padding:2px}.segmented.sm .segment[data-v-6fae9314]{height:26px;padding:0 9px;font-size:12px}.settings-container[data-v-45766a86]{display:flex;flex-direction:column;gap:16px;padding:4px 0}.settings-nav[data-v-45766a86]{display:flex;justify-content:center;margin-bottom:4px}.settings-section[data-v-45766a86]{display:flex;flex-direction:column;gap:12px}.settings-group[data-v-45766a86]{border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-card, rgba(0, 0, 0, .02));overflow:hidden}.dark{background:#ffffff08;border-color:#ffffff14}.settings-row[data-v-45766a86]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.dark{border-bottom-color:#ffffff0f}.settings-row[data-v-45766a86]:last-child{border-bottom:none}.settings-row.vertical[data-v-45766a86]{flex-direction:column;align-items:stretch;gap:10px}.settings-row.clickable[data-v-45766a86]{cursor:pointer;transition:background-color .15s ease}.settings-row.clickable[data-v-45766a86]:hover{background:#00000008}.dark{background:#ffffff0d}.settings-meta[data-v-45766a86]{display:flex;flex-direction:column;gap:3px;min-width:0}.settings-label[data-v-45766a86]{font-size:13.5px;font-weight:500;color:var(--foreground)}.settings-desc[data-v-45766a86]{font-size:12px;line-height:1.5;color:var(--text-secondary);margin:0}.settings-ctrl[data-v-45766a86]{flex-shrink:0;display:flex;align-items:center}.database-path-card[data-v-45766a86]{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px}.dark{background:#00000040;border-color:#ffffff1a}.path-text[data-v-45766a86]{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:all;user-select:all}.copy-btn[data-v-45766a86]{flex-shrink:0;display:inline-flex;align-items:center;gap:5px}.settings-footer[data-v-45766a86]{display:flex;align-items:center;justify-content:space-between;width:100%}.reset-btn[data-v-45766a86]{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary)}.reset-btn[data-v-45766a86]:hover{color:var(--foreground)}.sync-header-row[data-v-45766a86]{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-pill[data-v-45766a86]{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;padding:2px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--border-subtle);color:var(--text-secondary)}.status-pill.connected[data-v-45766a86]{background:#34c7591a;border-color:#34c75940;color:#34c759}.status-pill.error[data-v-45766a86]{background:#ff3b301a;border-color:#ff3b3040;color:#ff3b30}.status-dot[data-v-45766a86]{width:6px;height:6px;border-radius:50%;display:inline-block}.status-dot.green[data-v-45766a86]{background-color:#34c759;box-shadow:0 0 6px #34c75999}.status-dot.red[data-v-45766a86]{background-color:#ff3b30;box-shadow:0 0 6px #ff3b3099}.sync-input-row[data-v-45766a86]{display:flex;align-items:center;gap:8px;width:100%}.sync-text-input[data-v-45766a86]{flex:1;height:32px;padding:0 10px;font-size:13px;color:var(--foreground);background:var(--surface);border:1px solid var(--border-subtle);border-radius:6px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.dark{background:#00000040;border-color:#ffffff1f}.sync-text-input[data-v-45766a86]:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0071e326}.test-btn[data-v-45766a86]{flex-shrink:0;display:inline-flex;align-items:center;gap:6px}.auth-card[data-v-45766a86]{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px}.dark{background:#0003;border-color:#ffffff14}.auth-grid[data-v-45766a86]{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:600px){.auth-grid[data-v-45766a86]{grid-template-columns:1fr}}.auth-field[data-v-45766a86]{display:flex;flex-direction:column;gap:4px}.field-label[data-v-45766a86]{font-size:11.5px;font-weight:500;color:var(--text-secondary)}.auth-error-banner[data-v-45766a86]{display:flex;align-items:center;gap:6px;font-size:12px;color:#ff3b30;padding:6px 10px;background:#ff3b3014;border-radius:6px}.admin-tip-text[data-v-45766a86]{font-size:11.5px;color:var(--text-secondary);flex:1}.auth-btn-row[data-v-45766a86]{display:flex;align-items:center;justify-content:flex-end;gap:8px}.user-chip[data-v-45766a86]{font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;background:#0071e31a;color:var(--primary)}.logout-btn[data-v-45766a86]{color:#ff3b30;font-size:12px}.logout-btn[data-v-45766a86]:hover{background:#ff3b3014;color:#ff3b30}.last-sync-tag[data-v-45766a86]{font-size:11.5px;color:var(--text-secondary)}.sync-stats-bar[data-v-45766a86]{font-size:11.5px;color:var(--primary);margin-top:2px}.sync-now-btn[data-v-45766a86]{display:inline-flex;align-items:center;gap:6px}.import-body[data-v-4c0f77e7]{display:flex;flex-direction:column;gap:20px}.file-row[data-v-4c0f77e7]{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--background)}.file-icon[data-v-4c0f77e7]{width:44px;height:44px;border-radius:12px;background:var(--surface);color:var(--primary);display:grid;place-items:center;flex-shrink:0;box-shadow:var(--shadow-sm)}.file-meta[data-v-4c0f77e7]{min-width:0}.file-meta strong[data-v-4c0f77e7]{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta span[data-v-4c0f77e7]{display:block;margin-top:3px;font-size:12px;color:var(--muted-foreground)}.title-form-row[data-v-4c0f77e7]{display:flex;flex-direction:column;gap:8px}.title-form-row label[data-v-4c0f77e7]{font-size:13px;font-weight:500;color:var(--text-secondary)}.stats-row[data-v-4c0f77e7]{display:flex;flex-wrap:wrap;gap:8px}.stat-pill[data-v-4c0f77e7]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:var(--background);color:var(--text-secondary);font-size:12px}.stat-pill strong[data-v-4c0f77e7]{color:var(--foreground);font-weight:600}.diagnostics-list[data-v-4c0f77e7]{margin:0;padding:0 0 0 18px;color:var(--text-secondary);font-size:13px;line-height:1.7}.preview-block[data-v-4c0f77e7]{border-top:1px solid var(--border);padding-top:18px;display:flex;flex-direction:column;gap:16px}.preview-label[data-v-4c0f77e7]{font-size:13px;font-weight:600;color:var(--text-secondary)}.preview-section[data-v-4c0f77e7]{display:flex;flex-direction:column;gap:8px}.preview-section-title[data-v-4c0f77e7]{display:flex;align-items:baseline;gap:10px;font-size:15px;font-weight:600;letter-spacing:-.01em}.preview-section-title>span[data-v-4c0f77e7]{font-size:12px;color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-weight:500}.preview-step[data-v-4c0f77e7]{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.preview-step[data-v-4c0f77e7]:last-child{border-bottom:0}.preview-step-number[data-v-4c0f77e7]{width:24px;height:24px;border-radius:50%;background:var(--background);color:var(--text-secondary);font-size:12px;font-weight:600;display:grid;place-items:center;flex-shrink:0}.preview-step-body[data-v-4c0f77e7]{flex:1;min-width:0}.preview-step-body p[data-v-4c0f77e7]{margin:0;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.preview-params[data-v-4c0f77e7]{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.preview-param[data-v-4c0f77e7]{display:inline-flex;align-items:center;gap:4px;height:22px;box-sizing:border-box;padding:0 8px;border-radius:999px;background:var(--background);color:var(--text-secondary);font-size:12px;line-height:1;font-weight:500}.preview-param.duration[data-v-4c0f77e7]{background:#0071e314;color:var(--primary)}.dark .preview-param.duration[data-v-4c0f77e7]{background:#2997ff26;color:#2997ff}.preview-param.temperature[data-v-4c0f77e7]{background:#f59e0b1f;color:#b45309}.dark .preview-param.temperature[data-v-4c0f77e7]{background:#f59e0b2e;color:#fbbf24}.preview-param.warning[data-v-4c0f77e7]{background:#fff2f1;color:var(--red-text)}.dark .preview-param.warning[data-v-4c0f77e7]{background:#2a1517;color:#ff6961}.import-error[data-v-4c0f77e7]{margin:0;padding:10px 12px;border-radius:12px;background:#fff2f1;color:var(--red-text);font-size:13px}.dark .import-error[data-v-4c0f77e7]{background:#2a1517;color:#ff6961}.protocol-list-pane[data-v-6ed54a6f]{width:312px;flex:0 0 312px;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--list);position:relative;min-height:0;transition:background-color .3s var(--ease-apple)}.protocol-list-pane.drag-over[data-v-6ed54a6f]{background:var(--accent)}.list-header[data-v-6ed54a6f]{padding:24px 20px 16px}.header-actions[data-v-6ed54a6f]{display:flex;align-items:center;gap:2px}.list-controls[data-v-6ed54a6f]{padding:0 16px 12px;display:flex;flex-direction:column;gap:10px}.search-field[data-v-6ed54a6f]{position:relative}.search-field>svg[data-v-6ed54a6f]{position:absolute;top:50%;left:14px;transform:translateY(-50%);color:var(--muted-foreground);pointer-events:none}.status-filter[data-v-6ed54a6f]{width:100%}.status-filter[data-v-6ed54a6f] .segmented{display:flex;width:100%}.status-filter[data-v-6ed54a6f] .segment{flex:1;padding:0 6px}.deleted-hint[data-v-6ed54a6f]{font-size:12px;line-height:1.5;color:var(--muted-foreground);padding:0 2px}.list-action-buttons[data-v-6ed54a6f]{display:flex;gap:8px;align-items:stretch}.new-button[data-v-6ed54a6f]{flex:1;height:40px;justify-content:flex-start;padding:0 14px}.import-button[data-v-6ed54a6f]{height:40px;padding:0 13px}.shortcut-badge[data-v-6ed54a6f]{margin-left:auto;font-size:12px;color:#ffffffb3}.hidden-file-input[data-v-6ed54a6f]{display:none}.import-error[data-v-6ed54a6f]{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:#fff2f1;color:var(--red-text);font-size:13px;line-height:1.5}.dark .import-error[data-v-6ed54a6f]{background:#2a1517;color:#ff6961}.import-error>svg[data-v-6ed54a6f]{flex-shrink:0;margin-top:1px}.import-error>span[data-v-6ed54a6f]{flex:1}.import-error button[data-v-6ed54a6f]{border:0;background:transparent;color:inherit;display:grid;place-items:center;padding:2px;border-radius:50%}.protocol-list[data-v-6ed54a6f]{flex:1;overflow-y:auto;padding:0 12px 16px;min-height:0}.protocol-row[data-v-6ed54a6f]{display:flex;align-items:stretch;border-radius:12px;margin-bottom:4px;background:transparent;transition:background-color .25s var(--ease-apple),opacity .25s var(--ease-apple)}.protocol-row[data-v-6ed54a6f]:hover,.protocol-row.active[data-v-6ed54a6f]{background:var(--background)}.protocol-row.deleted[data-v-6ed54a6f]{opacity:.78}.protocol-row-main[data-v-6ed54a6f]{flex:1;min-width:0;border:0;background:transparent;text-align:left;padding:14px 12px;border-radius:12px;color:var(--foreground);transition:transform .25s var(--ease-apple)}.protocol-row-main[data-v-6ed54a6f]:active{transform:scale(.995)}.protocol-row-main[data-v-6ed54a6f]:disabled{opacity:.7}.protocol-row-title[data-v-6ed54a6f]{display:flex;align-items:center;gap:8px}.protocol-row-title svg[data-v-6ed54a6f]{color:var(--muted-foreground);flex-shrink:0}.protocol-row.active .protocol-row-title svg[data-v-6ed54a6f]{color:var(--primary)}.protocol-row-title strong[data-v-6ed54a6f]{font-size:14px;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.protocol-row-main p[data-v-6ed54a6f]{color:var(--text-secondary);font-size:13px;line-height:1.6;margin:6px 0 8px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.protocol-row-footer[data-v-6ed54a6f]{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted-foreground)}.status-pill[data-v-6ed54a6f]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:12px;line-height:1.5;font-weight:500;white-space:nowrap}.restore-btn[data-v-6ed54a6f]{align-self:center;margin-right:8px;display:inline-flex;align-items:center;gap:4px;border:0;border-radius:999px;background:var(--surface);color:var(--primary);font-size:12px;font-weight:500;padding:6px 10px;box-shadow:var(--shadow-sm);flex-shrink:0;transition:transform .2s var(--ease-apple),background-color .2s var(--ease-apple)}.restore-btn[data-v-6ed54a6f]:hover{background:var(--accent)}.restore-btn[data-v-6ed54a6f]:active{transform:scale(.96)}.list-empty[data-v-6ed54a6f]{margin:44px 12px 0}.empty-action[data-v-6ed54a6f]{margin-top:16px}.drop-overlay[data-v-6ed54a6f]{position:absolute;inset:8px;z-index:5;border-radius:16px;border:1px dashed var(--primary);background:#fffffff0;box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--primary);pointer-events:none;text-align:center;padding:24px}.dark .drop-overlay[data-v-6ed54a6f]{background:#1d1d1ff0}.drop-icon[data-v-6ed54a6f]{width:56px;height:56px;border-radius:16px;background:var(--accent);display:grid;place-items:center;margin-bottom:4px}.drop-overlay strong[data-v-6ed54a6f]{font-size:15px;font-weight:600}.drop-overlay span[data-v-6ed54a6f]{font-size:13px;color:var(--text-secondary)}@media(max-width:1200px){.protocol-list-pane[data-v-6ed54a6f]{width:288px;flex-basis:288px}}@media(max-width:1060px){.protocol-list-pane[data-v-6ed54a6f]{width:272px;flex-basis:272px}.list-header[data-v-6ed54a6f]{padding:20px 16px 14px}.list-controls[data-v-6ed54a6f]{padding:0 12px 10px}.protocol-list[data-v-6ed54a6f]{padding:0 8px 14px}.shortcut-badge[data-v-6ed54a6f]{display:none}.import-button[data-v-6ed54a6f]{padding:0 12px}}.organize-body[data-v-49ebc6bb]{display:flex;flex-direction:column;gap:14px}.organize-label[data-v-49ebc6bb]{font-size:13px;font-weight:500;color:var(--text-secondary)}.organize-textarea[data-v-49ebc6bb]{width:100%;min-height:150px;border:0;border-radius:12px;background:var(--background);color:var(--foreground);font:inherit;font-size:14px;line-height:1.7;padding:14px 16px;resize:vertical;outline:none;transition:box-shadow .3s var(--ease-apple)}.organize-textarea[data-v-49ebc6bb]::placeholder{color:var(--muted-foreground);opacity:.75}.organize-textarea[data-v-49ebc6bb]:focus-visible{box-shadow:0 0 0 2px #0071e34d}.organize-stats[data-v-49ebc6bb]{display:flex;flex-wrap:wrap;gap:8px}.organize-hint[data-v-49ebc6bb]{margin:0;font-size:12px;line-height:1.6;color:var(--muted-foreground)}.stat-pill[data-v-49ebc6bb]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:var(--background);color:var(--text-secondary);font-size:12px}.stat-pill strong[data-v-49ebc6bb]{color:var(--foreground);font-weight:600}.organize-preview[data-v-49ebc6bb]{border-top:1px solid var(--border);padding-top:16px;display:flex;flex-direction:column;gap:16px}.preview-label[data-v-49ebc6bb]{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--text-secondary)}.preview-section[data-v-49ebc6bb]{display:flex;flex-direction:column;gap:6px}.preview-section-title[data-v-49ebc6bb]{display:flex;align-items:baseline;gap:10px;font-size:15px;font-weight:600}.preview-section-title>span[data-v-49ebc6bb]{font-size:12px;font-weight:500;color:var(--muted-foreground);font-variant-numeric:tabular-nums}.preview-step[data-v-49ebc6bb]{display:flex;gap:10px;padding:7px 0;border-bottom:1px solid var(--border)}.preview-step[data-v-49ebc6bb]:last-child{border-bottom:0}.preview-step-number[data-v-49ebc6bb]{width:24px;height:24px;border-radius:50%;background:var(--background);color:var(--text-secondary);font-size:12px;font-weight:600;display:grid;place-items:center;flex-shrink:0}.preview-step-body[data-v-49ebc6bb]{flex:1;min-width:0}.preview-step-body p[data-v-49ebc6bb]{margin:0;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.preview-params[data-v-49ebc6bb]{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}.preview-param[data-v-49ebc6bb]{display:inline-flex;align-items:center;gap:4px;height:22px;box-sizing:border-box;padding:0 8px;border-radius:999px;background:var(--background);color:var(--text-secondary);font-size:12px;line-height:1;font-weight:500}.preview-param.duration[data-v-49ebc6bb]{background:#0071e314;color:var(--primary)}.dark .preview-param.duration[data-v-49ebc6bb]{background:#2997ff26;color:#2997ff}.preview-param.temperature[data-v-49ebc6bb]{background:#f59e0b1f;color:#b45309}.dark .preview-param.temperature[data-v-49ebc6bb]{background:#f59e0b2e;color:#fbbf24}.preview-param.warning[data-v-49ebc6bb]{background:#fff2f1;color:var(--red-text)}.dark .preview-param.warning[data-v-49ebc6bb]{background:#2a1517;color:#ff6961}.organize-empty[data-v-49ebc6bb]{margin:4px 0 0;font-size:13px;line-height:1.7;color:var(--muted-foreground)}.solution-pane{height:100%;min-height:0;display:flex;flex-direction:column;color:var(--foreground);background:var(--background)}.solution-toolbar{min-height:54px;padding:10px 24px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--border);background:var(--surface)}.solution-save-status{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.solution-status-dot{width:7px;height:7px;border-radius:999px;background:#34c759;flex-shrink:0}.solution-status-dot.dirty,.solution-status-dot.busy{background:#ff9f0a}.solution-status-dot.error{background:#ff3b30}.solution-toolbar-actions{display:flex;align-items:center;gap:8px}.solution-scroll{overflow-y:auto;flex:1;min-height:0;padding:28px 32px 48px}.solution-card{max-width:860px;margin:0 auto;padding:36px 40px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}.solution-card-title{display:block;width:100%;background:transparent;border:0;padding:0;margin:0 0 12px;font-size:30px;font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--foreground);min-width:0;outline:none}.solution-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-secondary)}.solution-kind-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:500;background:var(--accent);color:var(--primary)}.solution-kind-pill.reagent{background:#10b9811f;color:#059669}.solution-revision-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#7878801f;color:var(--text-secondary);font-size:11.5px;font-weight:500;line-height:1.4}.solution-meta-link{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;background:#0071e314;color:var(--primary);border:1px solid rgba(0,113,227,.2);font-size:11.5px;font-weight:500;cursor:pointer;transition:all .15s ease}.solution-meta-link:hover{background:#0071e326;border-color:var(--primary)}.solution-top-meta{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:20px}.solution-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:var(--text-secondary);min-width:0}.solution-input{display:block;width:100%;min-width:0;border:1px solid transparent;border-radius:10px;padding:9px 12px;background:var(--background);color:var(--foreground);font:inherit;font-size:14px;font-weight:400;line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.solution-input:hover{border-color:var(--border)}.solution-input::placeholder{color:var(--muted-foreground)}.solution-input:focus-visible{outline:none;border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--ring)}textarea.solution-input{resize:vertical}.solution-ph{width:140px;max-width:160px}.solution-ph .solution-input{height:38px;box-sizing:border-box;padding:0 12px;border-radius:10px;line-height:38px}.solution-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}.solution-section-heading h2{margin:0;font-size:16px;font-weight:600;letter-spacing:-.01em}.solution-columns,.solution-component-row{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) 32px;align-items:center;gap:10px}.solution-columns{padding:0 12px 6px;color:var(--text-secondary);font-size:12px;font-weight:500}.solution-component-row{padding:4px 0}.solution-name-input-wrap{position:relative;display:flex;align-items:center;min-width:0}.solution-input-with-addon{padding-right:102px}.solution-name-addon{position:absolute;right:6px;display:inline-flex;align-items:center;max-width:140px}.solution-row-remove{opacity:.45;transition:opacity .15s ease,color .15s ease}.solution-component-row:hover .solution-row-remove,.solution-row-remove:focus-visible{opacity:1}.solution-component-row>span{padding:5px 0;overflow-wrap:anywhere}.solution-component-row>span:nth-child(2){text-align:right}.solution-component-name-read{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.solution-add{margin-top:8px;color:var(--primary)}.solution-fold{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.solution-fold>summary{cursor:pointer;color:var(--foreground);font-size:14px;font-weight:500;padding:4px 0;-webkit-user-select:none;user-select:none}.solution-fold>summary>span{font-size:12px;font-weight:400;margin-left:10px;color:var(--muted-foreground)}.solution-fold>summary>span.is-highlight{color:var(--primary);background:var(--accent);padding:2px 8px;border-radius:999px;font-weight:500}.solution-fold-body{display:grid;gap:18px;margin-top:16px}.solution-batch-dilution{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border-radius:12px;background:var(--accent);color:var(--primary);font-size:13px;font-weight:500}.solution-batch-dilution>span{display:inline-flex;align-items:center;gap:6px}.solution-prep-columns{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,1.15fr) minmax(0,1fr);gap:10px;padding:0 4px 6px;border-bottom:1px solid var(--border);font-size:12px;font-weight:500;color:var(--text-secondary)}.solution-preparation-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,1.15fr) minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--border)}.solution-prep-cell{gap:4px}.solution-mobile-label{display:none;font-size:12px;color:var(--text-secondary)}.solution-preparation-name-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:40px;padding:4px 0}.solution-preparation-name{font-weight:500;font-size:14px;color:var(--foreground);overflow-wrap:anywhere}.solution-target-conc-tag{display:inline-block;font-size:11px;padding:1px 6px;border-radius:999px;background:var(--background);color:var(--text-secondary)}.solution-stock-tag{display:inline-block;font-size:10px;padding:1px 6px;border-radius:999px;background:#0071e31f;color:var(--primary);font-weight:600}.solution-paste{display:grid;gap:10px;margin-bottom:16px;padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--background)}.solution-paste button{justify-self:end}.solution-hint{color:var(--text-secondary);font-size:12.5px;line-height:1.6;margin:0}.solution-legacy-fields{display:grid;gap:16px}.solution-references{display:flex;gap:8px;flex-wrap:wrap}.solution-reference-button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--background);color:var(--foreground);border-radius:999px;padding:6px 12px;font:inherit;font-size:12.5px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.solution-reference-button:hover{border-color:var(--primary);color:var(--primary)}.solution-read-composition{display:grid;gap:0}.solution-read-row{display:flex;gap:16px;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border);font-size:14px;overflow-wrap:anywhere}.solution-read-row>span:last-child{color:var(--text-secondary);text-align:right;font-variant-numeric:tabular-nums}.solution-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--text-secondary);font-size:12px}.solution-inline-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13.5px;line-height:1.7;margin:0}.solution-mini-card{border:1px solid var(--border);border-radius:14px;padding:16px;background:var(--surface);min-width:0}.solution-mini-title{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}.solution-mini-title strong{font-size:15px;font-weight:600}.solution-stock-badge-wrap{position:relative;display:inline-flex}.solution-stock-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 8px;border-radius:999px;background:#0071e31f;color:var(--primary);font-weight:500;white-space:nowrap;max-width:140px;overflow:hidden;text-overflow:ellipsis;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.solution-stock-badge:hover,.solution-stock-badge.active{background:#0071e333;border-color:#0071e34d}.solution-stock-badge.readable{cursor:pointer}.solution-stock-badge.readable:hover{text-decoration:underline}.solution-stock-tag.clickable{cursor:pointer;border:0;transition:all .15s ease}.solution-stock-tag.clickable:hover{filter:brightness(.95);transform:scale(1.05)}.solution-stock-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:50;width:260px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px #0000001f;padding:12px;display:flex;flex-direction:column;gap:8px;animation:popoverFadeIn .15s ease-out}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.stock-popover-header{display:flex;align-items:center;justify-content:space-between;gap:6px;border-bottom:1px solid var(--border);padding-bottom:8px}.stock-popover-title{display:flex;align-items:center;gap:6px;min-width:0}.stock-popover-title strong{font-size:13px;font-weight:600;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-popover-kind{font-size:10px;padding:1px 6px;border-radius:999px;background:#0071e31a;color:var(--primary);white-space:nowrap}.stock-popover-body{display:flex;flex-direction:column;gap:4px;font-size:12px}.stock-popover-info-row{display:flex;align-items:flex-start;gap:4px;color:var(--text-secondary)}.stock-popover-label{color:var(--muted-foreground);flex-shrink:0}.stock-popover-val{color:var(--foreground);font-weight:500;word-break:break-all}.stock-popover-sync-bar{margin-top:4px;padding:6px 8px;background:#f59e0b1f;border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;color:#b45309}.stock-sync-btn{border:0;background:#f59e0b;color:#fff;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;cursor:pointer}.stock-popover-actions{display:flex;align-items:center;gap:6px;border-top:1px solid var(--border);padding-top:8px}.stock-popover-btn{font-size:12px;height:28px;padding:0 8px;gap:4px}.stock-popover-link-btn{border:0;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;padding:4px 6px;border-radius:4px}.stock-popover-link-btn:hover{background:var(--surface-secondary, rgba(120, 120, 128, .1));color:var(--foreground)}.stock-popover-link-btn.danger:hover{color:var(--destructive);background:#ef44441a}.solution-conc-input-wrap{position:relative;display:flex;align-items:center}.solution-conc-input-wrap .solution-input{padding-right:76px}.solution-dilution-chip{position:absolute;right:8px;display:inline-flex;align-items:center;gap:3px;font-size:11px;padding:2px 7px;border-radius:999px;background:#0071e31a;color:var(--primary);font-weight:500;cursor:pointer;transition:all .15s ease}.solution-dilution-chip:hover{background:#0071e32e;transform:translateY(-1px)}.solution-conc-quick-sym{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:4px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:1;transition:all .15s ease;-webkit-user-select:none;user-select:none}.solution-conc-quick-sym:hover{border-color:var(--primary);color:var(--primary);background:#0071e314}.solution-stock-unlink{border:0;background:transparent;padding:0 1px;color:inherit;cursor:pointer;display:inline-flex;align-items:center;opacity:.7}.solution-stock-unlink:hover{opacity:1}.solution-stock-link-btn{border:0;background:var(--surface);padding:3px 8px;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-size:11px;border-radius:999px;box-shadow:0 1px 2px #0000000d;transition:color .15s ease,background-color .15s ease}.solution-stock-link-btn:hover{color:var(--primary);background:var(--accent)}.solution-dilution-suggestion{display:inline-flex;align-items:center;margin-top:2px;padding:3px 8px;font-size:11.5px;color:var(--primary);background:var(--accent);border:1px dashed rgba(0,113,227,.35);border-radius:6px;cursor:pointer;text-align:left}.solution-dilution-suggestion:hover{border-color:var(--primary)}.solution-dilution-matched{display:inline-block;margin-top:2px;font-size:11px;color:#059669;font-weight:500}.solution-dilution-info{border:0;background:transparent;padding:0;margin-top:2px;font-size:11px;color:var(--text-secondary);cursor:pointer;text-align:left}.solution-dilution-info:hover{color:var(--primary);text-decoration:underline}.solution-volume-wrapper{display:flex;flex-direction:column;gap:5px;max-width:340px}.solution-prep-steps-wrapper{display:flex;flex-direction:column;gap:6px}.solution-prep-steps-header{display:flex;justify-content:space-between;align-items:center}.solution-storage-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.solution-usage-block{display:flex;flex-direction:column;gap:8px;margin-top:8px}@media(max-width:1150px){.solution-scroll{padding:20px 18px 36px}.solution-card{padding:26px 22px}.solution-toolbar{padding:10px 16px}}@media(max-width:780px){.solution-toolbar{display:none}.solution-scroll{padding:12px 8px calc(76px + env(safe-area-inset-bottom,0px)) 8px}.solution-prep-columns{display:none}.solution-mobile-label{display:inline}.solution-preparation-row{grid-template-columns:1fr;gap:8px}.solution-preparation-name-cell{grid-column:1 / -1;min-height:0}.solution-storage-notes-grid{grid-template-columns:1fr}.solution-scaling-row{flex-direction:column;align-items:stretch;gap:8px}.solution-scaling-custom-input{width:100%;box-sizing:border-box}}@media(max-width:600px){.solution-card{padding:16px 12px;border-radius:12px;box-shadow:none}.solution-card-title{font-size:20px}.solution-fold>summary>span{display:block;margin-left:16px;margin-top:4px}.solution-columns,.solution-component-row{gap:6px}}.solution-downstream-card{margin-top:20px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.downstream-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--border)}.downstream-card-title{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:14px}.downstream-card-title strong{font-weight:600}.downstream-card-hint{font-size:12px;color:var(--text-secondary)}.downstream-recipes-list{display:flex;flex-direction:column;gap:8px}.downstream-recipe-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--background);border:1px solid var(--border);border-radius:8px;transition:all .15s ease}.downstream-recipe-item:hover{border-color:#0071e34d;box-shadow:0 2px 8px #0000000a}.downstream-recipe-info{display:flex;flex-direction:column;gap:4px;min-width:0}.downstream-recipe-name{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--foreground)}.downstream-recipe-name .recipe-icon{color:var(--primary)}.downstream-recipe-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-secondary);flex-wrap:wrap}.downstream-recipe-meta .meta-item.highlight{color:var(--primary);font-weight:500}.downstream-jump-btn{font-size:12px;gap:4px;flex-shrink:0}.solution-section-title-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.solution-conc-view-toggle{display:inline-flex;gap:2px;background:var(--surface-secondary, rgba(120, 120, 128, .08));border:1px solid var(--border);border-radius:8px;padding:2px}.solution-conc-view-btn{border:0;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:500;color:var(--text-secondary);background:transparent;cursor:pointer;transition:all .15s ease}.solution-conc-view-btn.active{background:var(--surface, #ffffff);color:var(--foreground);box-shadow:0 1px 3px #00000014;font-weight:600}.solution-working-preview-hint{margin-bottom:8px;padding:8px 12px;background:#0071e314;border:1px solid rgba(0,113,227,.18);border-radius:8px;font-size:12px;color:var(--primary);display:flex;align-items:center;gap:6px}.working-dilution-card{margin-top:16px;margin-bottom:16px;background:linear-gradient(135deg,#0071e308,#34c75908),var(--surface);border:1px solid rgba(0,113,227,.2);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:14px}.working-dilution-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.working-dilution-title{display:flex;align-items:center;gap:6px;color:var(--foreground);font-size:13.5px;font-weight:600}.working-title-icon{color:var(--primary)}.working-fold-selector{display:flex;gap:4px;background:var(--surface-secondary, rgba(120, 120, 128, .08));padding:2px;border-radius:7px}.working-fold-chip{border:0;background:transparent;padding:2px 8px;border-radius:5px;font-size:11.5px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.working-fold-chip.active{background:var(--surface, #ffffff);color:var(--primary);font-weight:600;box-shadow:0 1px 3px #00000014}.working-dilution-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.working-volume-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.working-sub-label{font-size:12px;color:var(--text-secondary)}.working-presets{display:flex;gap:4px;flex-wrap:wrap}.working-preset-pill{border:1px solid var(--border);background:var(--background);padding:3px 8px;border-radius:6px;font-size:11.5px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.working-preset-pill.active{background:#0071e31a;border-color:var(--primary);color:var(--primary);font-weight:600}.working-volume-input{max-width:140px;height:28px;font-size:12px}.working-result-panel{display:flex;flex-direction:column;gap:10px}.working-quantities-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.working-qty-box{padding:10px 14px;border-radius:10px;display:flex;flex-direction:column;gap:4px}.working-qty-box.stock{background:#0071e30f;border:1px solid rgba(0,113,227,.15)}.working-qty-box.diluent{background:#10b9810f;border:1px solid rgba(16,185,129,.15)}.qty-box-top{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary)}.working-qty-box.stock .qty-box-top{color:var(--primary)}.working-qty-box.diluent .qty-box-top{color:#059669}.qty-val{font-size:16px;font-weight:700;font-family:ui-monospace,SFMono-Regular,monospace;color:var(--foreground)}.working-instruction-box{padding:10px 12px;background:var(--background);border:1px dashed var(--border);border-radius:8px;font-size:12px;line-height:1.6;color:var(--foreground)}.working-dilution-invalid{padding:12px;text-align:center;font-size:12px;color:var(--muted-foreground);background:var(--background);border-radius:8px}.working-dilution-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.working-action-btn{font-size:12px;height:28px;gap:5px}.solution-top-actions{display:flex;flex-direction:column;gap:6px}.solution-action-label-placeholder{font-size:13px;font-weight:500;line-height:1.4;-webkit-user-select:none;user-select:none;visibility:hidden;height:18px}.solution-top-actions .solution-copy-md-btn{height:38px;box-sizing:border-box;padding:0 14px;font-size:13px;font-weight:500;gap:6px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--foreground);display:inline-flex;align-items:center;justify-content:center;transition:all .15s cubic-bezier(.16,1,.3,1);white-space:nowrap}.solution-top-actions .solution-copy-md-btn:hover{background:var(--surface-hover, rgba(0, 0, 0, .04));border-color:var(--primary);color:var(--primary)}.dark .solution-top-actions .solution-copy-md-btn{background:#ffffff0d;border-color:#ffffff1f}.dark .solution-top-actions .solution-copy-md-btn:hover{background:#ffffff1a;border-color:var(--primary)}.solution-meta-chips-block{display:flex;flex-direction:column;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:14px}.solution-chips-row{display:flex;align-items:flex-start;gap:10px;font-size:12px}.solution-chips-label{display:flex;align-items:center;gap:4px;font-weight:600;color:var(--text-secondary);white-space:nowrap;height:24px;min-width:80px}.solution-chips-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.solution-tag-chip{height:24px;padding:0 10px;font-size:11.5px;font-weight:500;line-height:1;box-sizing:border-box;border-radius:999px;border:1px solid var(--border);background:var(--background);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.solution-tag-chip:hover{border-color:var(--primary);color:var(--primary)}.solution-tag-chip.active{background:#0071e31a;border-color:var(--primary);color:var(--primary);font-weight:600}.solution-tag-chip.custom .chip-remove{border:none;background:transparent;color:inherit;font-size:13px;line-height:1;padding:0 2px;cursor:pointer}.solution-tag-add-wrap{display:inline-flex;align-items:center;position:relative}.solution-tag-input{width:68px;height:24px;font-size:11.5px;padding:0 8px;box-sizing:border-box;border-radius:999px;border:1px dashed var(--border);background:transparent;color:var(--foreground);outline:none;transition:width .2s cubic-bezier(.16,1,.3,1),border-color .15s ease,padding-right .2s ease}.solution-tag-add-wrap.is-focused .solution-tag-input,.solution-tag-input:focus{width:108px;padding-right:22px;border-color:var(--primary);border-style:solid;background:var(--background)}.solution-tag-add-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:999px;border:none;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .15s ease,background .15s ease}.solution-tag-add-btn:hover{background:#0077ed;transform:translateY(-50%) scale(1.08)}.solution-safety-chip{height:24px;padding:0 10px;font-size:11.5px;font-weight:500;line-height:1;box-sizing:border-box;border-radius:999px;border:1px solid var(--border);background:var(--background);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.solution-safety-chip:hover{filter:brightness(.96)}.solution-safety-chip.active{font-weight:600}.solution-safety-chip.orange.active{background:#f973161f;border-color:#f97316;color:#ea580c}.solution-safety-chip.amber.active{background:#f59e0b1f;border-color:#f59e0b;color:#d97706}.solution-safety-chip.purple.active{background:#a855f71f;border-color:#a855f7;color:#9333ea}.solution-safety-chip.blue.active{background:#3b82f61f;border-color:#3b82f6;color:#2563eb}.solution-safety-chip.teal.active{background:#14b8a61f;border-color:#14b8a6;color:#0d9488}.solution-safety-chip.red.active{background:#ef44441f;border-color:#ef4444;color:#dc2626}.solution-safety-chip.cyan.active{background:#06b6d41f;border-color:#06b6d4;color:#0891b2}.solution-scaling-bar{margin:10px 0 14px;padding:10px 12px;background:#0071e30a;border:1px solid rgba(0,113,227,.15);border-radius:8px;display:flex;flex-direction:column;gap:8px}.solution-scaling-bar-header{display:flex;align-items:center;justify-content:space-between}.solution-scaling-title{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--primary)}.solution-scaling-hint{font-size:11px;color:var(--text-secondary);font-weight:400}.solution-scaling-badge{font-size:11px;font-weight:600;color:#0284c7;background:#0284c71a;padding:2px 8px;border-radius:999px}.solution-scaling-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.solution-scaling-presets{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.scaling-sub-label{font-size:11px;color:var(--text-secondary)}.solution-preset-vol-btn{font-size:11px;padding:2px 7px;border-radius:5px;border:1px solid var(--border);background:var(--background);color:var(--foreground);cursor:pointer;transition:all .15s ease}.solution-preset-vol-btn:hover{border-color:var(--primary);color:var(--primary)}.solution-preset-vol-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.solution-scaling-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.solution-scaling-custom-input{width:140px;font-size:11px;height:26px;padding:2px 8px}.solution-scaled-row-badge{margin-top:4px;font-size:11px;color:#0284c7;background:#0284c714;border:1px dashed rgba(2,132,199,.25);border-radius:4px;padding:2px 6px}.solution-spec-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.solution-mw-calc-btn{border:none;background:transparent;color:var(--primary);font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:3px;padding:0 4px;border-radius:4px}.solution-mw-calc-btn:hover{background:#0071e314}.solution-inline-mw-box{margin-top:4px;display:flex;align-items:center;gap:4px;background:var(--background);padding:4px;border-radius:6px;border:1px solid var(--border)}.solution-mw-input{width:120px;font-size:11px;height:24px;padding:2px 6px}.solution-tag-filter-bar{display:flex;align-items:center;gap:5px;overflow-x:auto;padding:4px 0 2px;scrollbar-width:none}.solution-tag-filter-bar::-webkit-scrollbar{display:none}.solution-tag-filter-pill{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:all .15s ease}.solution-tag-filter-pill:hover{border-color:var(--primary);color:var(--primary)}.solution-tag-filter-pill.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.solution-card-safety-badges{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin:3px 0}.solution-card-safety-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);color:#b45309;white-space:nowrap}.solution-safety-badge-tags{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:2px}.solution-safety-pill,.solution-preview-safety-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);color:#b45309;white-space:nowrap}.solution-preview-safety-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:6px}.card-title-left{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.card-title-left strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-ph-tag,.solution-ph-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;color:var(--primary);background:#0071e314;border:1px solid rgba(0,113,227,.18);white-space:nowrap}.solution-card-meta-chips{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin:4px 0 6px}.card-tag-pill,.solution-tag-pill{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;background:#0071e314;border:1px solid rgba(0,113,227,.18);color:var(--primary);white-space:nowrap}.card-safety-pill{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);color:#b45309;white-space:nowrap}.solution-card-recipe-box{display:flex;flex-direction:column;gap:4px;margin:3px 0 6px;background:var(--surface);border-radius:6px}.recipe-box-header{display:flex;align-items:center;gap:6px}.recipe-type-badge,.solution-comp-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;white-space:nowrap}.recipe-type-badge.working,.recipe-working-pill,.solution-comp-badge.working{background:#10b9811f;border:1px solid rgba(16,185,129,.28);color:#059669}.recipe-type-badge.standard,.solution-comp-badge.standard{background:#64748b14;border:1px solid rgba(100,116,139,.2);color:var(--text-secondary)}.solution-card-components-text{font-size:12px;line-height:1.5;color:var(--foreground);font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stock-fold-pill{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;line-height:1;box-sizing:border-box;background:#f973161a;border:1px solid rgba(249,115,22,.2);color:#ea580c;white-space:nowrap}.solution-linked-title-row{display:flex;align-items:center;gap:8px}.solution-linked-recipe-block{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin-top:3px}.solution-preview-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:10px}.solution-comp-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;flex-wrap:wrap}.solution-comp-title-group{display:flex;align-items:center;gap:6px}.solution-comp-header-icon{color:var(--primary);flex-shrink:0}.solution-comp-title{font-size:13px;font-weight:600;color:var(--foreground)}.solution-ref-amount-tag{font-size:11.5px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.solution-comp-table{border:1px solid rgba(0,0,0,.06);border-radius:8px;background:var(--surface);overflow:hidden;box-shadow:0 1px 2px #00000005}.dark .solution-comp-table{border-color:#ffffff14;background:#ffffff05}.solution-comp-thead{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;background:#fbfbfd;border-bottom:1px solid rgba(0,0,0,.04);font-size:11.5px;font-weight:600;color:var(--muted-foreground);letter-spacing:.2px}.dark .solution-comp-thead{background:#ffffff08;border-bottom-color:#ffffff14}.th-name{flex:1}.th-conc{width:140px;text-align:right;flex-shrink:0}.solution-read-row{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;font-size:13px;border-bottom:1px solid rgba(0,0,0,.04);transition:background .12s ease}.dark .solution-read-row{border-bottom-color:#ffffff0d}.solution-read-row:last-child{border-bottom:none}.solution-read-row:hover{background:#0071e305}.comp-name-wrap{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.comp-bullet{width:5px;height:5px;border-radius:50%;background:var(--primary);opacity:.7;flex-shrink:0}.comp-name{font-weight:500;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comp-conc{font-size:12.5px;color:var(--text-secondary);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0}.comp-conc.has-conc{font-weight:600;color:var(--foreground);padding:1.5px 7px;background:#0071e312;border:1px solid rgba(0,113,227,.15);border-radius:999px;display:inline-flex;align-items:center}.prep-details-fold{margin-top:10px;border:1px solid rgba(0,0,0,.06);border-radius:8px;background:var(--surface);overflow:hidden}.dark .prep-details-fold{border-color:#ffffff14;background:#ffffff05}.prep-fold-summary{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:12.5px;font-weight:600;color:var(--foreground);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fbfbfd;transition:background .15s ease,color .15s ease;list-style:none}.dark .prep-fold-summary{background:#ffffff08}.prep-fold-summary::-webkit-details-marker{display:none}.prep-fold-summary:hover{background:#0071e308;color:var(--primary)}.prep-fold-chevron{color:var(--text-secondary);transition:transform .2s ease;flex-shrink:0}.prep-details-fold[open] .prep-fold-chevron{transform:rotate(90deg)}.prep-fold-body{padding:12px;border-top:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;gap:8px}.dark .prep-fold-body{border-top-color:#ffffff14}.solution-prep-detail-item{margin-bottom:6px}.solution-dosage-scale-banner{margin:4px 0 8px;padding:6px 10px;border-radius:6px;background:#0071e314;border:1px solid rgba(0,113,227,.18);font-size:12px;line-height:1.4;color:var(--primary)}.solution-symbol-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:7px 12px;margin-bottom:12px;border-radius:10px;background:var(--surface-secondary, rgba(0, 0, 0, .02));border:1px solid var(--border)}.dark .solution-symbol-toolbar{background:#ffffff08}.symbol-toolbar-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.symbol-toolbar-group{display:inline-flex;align-items:center;gap:6px}.symbol-toolbar-label{font-size:11.5px;color:var(--text-secondary);font-weight:500;white-space:nowrap}.symbol-toolbar-chips{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.symbol-preset-pill,.symbol-key-pill{height:22px;padding:0 8px;font-size:11.5px;font-weight:500;font-variant-numeric:tabular-nums;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--foreground);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none}.symbol-preset-pill:hover,.symbol-key-pill:hover{border-color:var(--primary);color:var(--primary);background:#0071e314;transform:translateY(-1px)}.symbol-preset-pill:active,.symbol-key-pill:active{transform:translateY(0)}.symbol-key-pill{font-family:inherit;padding:0 7px}.symbol-feedback-toast{font-size:11px;font-weight:500;color:var(--primary);background:#0071e31a;padding:2px 8px;border-radius:999px;white-space:nowrap}.solution-storage-title-row{display:flex;align-items:center;justify-content:space-between;width:100%}.storage-symbol-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:4px;font-size:11px;font-weight:600;padding:1px 6px;cursor:pointer;transition:all .15s ease}.storage-symbol-btn:hover{border-color:var(--primary);color:var(--primary);background:#0071e314}.solution-storage-presets{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:6px}.storage-preset-btn{height:22px;padding:0 8px;font-size:11px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.storage-preset-btn:hover,.storage-preset-btn.active{border-color:var(--primary);color:var(--primary);background:#0071e314}.stock-picker-dialog[data-v-47136049]{display:flex;flex-direction:column;gap:12px}.stock-picker-search[data-v-47136049]{position:relative;display:flex;align-items:center}.stock-search-icon[data-v-47136049]{position:absolute;left:13px;color:var(--text-secondary);pointer-events:none}.stock-search-input[data-v-47136049]{padding-left:36px;padding-right:32px}.stock-search-clear[data-v-47136049]{position:absolute;right:10px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:0;border-radius:999px;background:#78788029;color:var(--text-secondary);cursor:pointer}.stock-search-clear[data-v-47136049]:hover{color:var(--foreground)}.stock-picker-tabs[data-v-47136049]{display:flex;gap:4px;background:var(--surface-secondary, rgba(120, 120, 128, .1));padding:3px;border-radius:10px}.stock-picker-quick-create[data-v-47136049]{margin:0}.stock-quick-create-btn[data-v-47136049]{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;background:var(--surface);border:1px dashed var(--border);border-radius:8px;color:var(--primary);font-size:13px;cursor:pointer;transition:all .15s ease}.stock-quick-create-btn[data-v-47136049]:hover:not(:disabled){background:#0071e314;border-color:var(--primary)}.stock-empty-create-btn[data-v-47136049]{margin-top:6px;display:inline-flex;align-items:center;gap:6px}.stock-tab[data-v-47136049]{flex:1;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.stock-tab.active[data-v-47136049]{background:var(--surface, #ffffff);color:var(--foreground);box-shadow:0 1px 3px #00000014}.stock-picker-list[data-v-47136049]{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto;padding-right:2px}.stock-picker-item[data-v-47136049]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.stock-picker-item[data-v-47136049]:hover,.stock-picker-item.active[data-v-47136049]{border-color:var(--primary);background:var(--accent)}.stock-picker-item-info[data-v-47136049]{display:flex;flex-direction:column;gap:3px;min-width:0}.stock-picker-item-title[data-v-47136049]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stock-picker-item-title strong[data-v-47136049]{font-size:14px;font-weight:600;color:var(--foreground)}.stock-badge[data-v-47136049]{font-size:11px;padding:2px 7px;border-radius:999px;font-weight:500}.stock-badge.recipe[data-v-47136049]{background:#0071e31f;color:var(--primary)}.stock-badge.reagent[data-v-47136049]{background:#10b9811f;color:#059669}.stock-ph[data-v-47136049]{font-size:11px;padding:1px 6px;border-radius:999px;background:var(--background);color:var(--text-secondary)}.stock-picker-spec[data-v-47136049]{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-picker-empty[data-v-47136049]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 16px;color:var(--text-secondary);gap:8px;text-align:center}.stock-picker-empty p[data-v-47136049]{margin:0;font-weight:500}.stock-picker-empty small[data-v-47136049]{color:var(--muted-foreground)}.solution-picker[data-v-47a5f260]{display:grid;gap:16px}.solution-picker-toolbar[data-v-47a5f260]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.solution-picker-search-box[data-v-47a5f260]{position:relative;display:flex;align-items:center;flex:1;min-width:200px}.picker-search-icon[data-v-47a5f260]{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.picker-search-input[data-v-47a5f260]{padding-left:36px;padding-right:30px}.picker-clear-btn[data-v-47a5f260]{position:absolute;right:8px;width:20px;height:20px;border:0;border-radius:999px;background:#78788029;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.solution-picker-results[data-v-47a5f260]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:220px;overflow-y:auto;padding:2px}.solution-choice[data-v-47a5f260]{display:flex;flex-direction:column;gap:6px;border:1px solid var(--border);border-radius:14px;padding:13px 14px;background:var(--surface);color:var(--foreground);text-align:left;min-width:0;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.solution-choice[data-v-47a5f260]:hover{border-color:var(--primary)}.solution-choice.selected[data-v-47a5f260]{border-color:var(--primary);background:var(--accent)}.choice-top[data-v-47a5f260]{display:flex;align-items:center;justify-content:space-between;gap:8px}.solution-choice strong[data-v-47a5f260]{font-weight:600;font-size:14px;overflow-wrap:anywhere}.choice-ph[data-v-47a5f260]{font-size:11px;padding:1px 6px;border-radius:999px;background:var(--background);color:var(--text-secondary);white-space:nowrap}.solution-choice span[data-v-47a5f260]{font-size:12px;color:var(--text-secondary);overflow-wrap:anywhere}.creating-back-bar[data-v-47a5f260]{display:flex;justify-content:flex-start}.solution-picker-fields[data-v-47a5f260]{margin:0;border:0;padding:0;min-width:0}@media(max-width:560px){.solution-picker-results[data-v-47a5f260]{grid-template-columns:1fr}}.viewer-body[data-v-217af923]{display:flex;flex-direction:column;gap:14px}.viewer-update-banner[data-v-217af923]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:var(--accent);border:1px solid rgba(0,113,227,.25)}.viewer-update-text[data-v-217af923]{display:flex;flex-direction:column;gap:2px;font-size:12.5px;color:var(--text-secondary)}.viewer-update-text strong[data-v-217af923]{font-size:13.5px;color:var(--primary)}.viewer-archived-banner[data-v-217af923]{padding:10px 12px;border-radius:10px;background:var(--background);color:var(--text-secondary);font-size:12.5px}.viewer-amount-label[data-v-217af923]{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.viewer-amount-readonly[data-v-217af923]{font-size:14px;color:var(--foreground)}.viewer-secondary-actions[data-v-217af923]{display:flex;justify-content:flex-end}.viewer-unlink-btn[data-v-217af923]{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;padding:4px 6px;font-size:12px;color:var(--text-secondary);cursor:pointer}.viewer-unlink-btn[data-v-217af923]:hover{color:var(--destructive)}.viewer-footer[data-v-217af923]{display:flex;align-items:center;justify-content:space-between;width:100%;gap:10px}.solution-protocol-resources[data-v-0f49823e]{margin:0 0 32px;padding-bottom:20px;border-bottom:1px solid var(--border)}.resource-heading-left[data-v-0f49823e]{display:flex;align-items:center;gap:8px}.resource-count-pill[data-v-0f49823e]{font-size:12px;font-weight:500;padding:1px 7px;border-radius:999px;background:var(--background);color:var(--text-secondary)}.solution-resource-actions[data-v-0f49823e]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.reagent-autolink-btn[data-v-0f49823e]{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s var(--ease-apple)}.reagent-autolink-btn[data-v-0f49823e]:hover{background:var(--background);color:var(--foreground)}.reagent-autolink-btn.active[data-v-0f49823e]{background:#0071e314;border-color:#0071e340;color:var(--primary)}.dark .reagent-autolink-btn.active[data-v-0f49823e]{background:#2997ff26;border-color:#2997ff4d;color:#2997ff}.solution-sync-banner[data-v-0f49823e]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-bottom:12px;border-radius:10px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.25);color:#b45309}.sync-banner-text[data-v-0f49823e]{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.4}.sync-banner-text strong[data-v-0f49823e]{font-weight:600;color:#92400e}.sync-banner-sub[data-v-0f49823e]{font-size:12px;color:#b45309;opacity:.9}.sync-banner-btn[data-v-0f49823e]{flex-shrink:0;gap:6px;background:var(--surface);border-color:#f59e0b59;color:#92400e;font-size:12px;font-weight:600}.sync-banner-btn[data-v-0f49823e]:hover{background:var(--background);border-color:#f59e0b}.solution-update-pill[data-v-0f49823e]{display:inline-flex;align-items:center;gap:4px;padding:1.5px 7px;border-radius:999px;background:#f59e0b24;border:1px solid rgba(245,158,11,.3);color:#b45309;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease;vertical-align:middle}.solution-update-pill[data-v-0f49823e]:hover{background:#f59e0b38;border-color:#f59e0b;transform:translateY(-.5px)}.solution-update-pill[data-v-0f49823e]:disabled{opacity:.6;cursor:not-allowed}.solution-usage-step-pill[data-v-0f49823e]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:#0071e314;border:1px solid rgba(0,113,227,.2);color:var(--primary, #0071e3);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;vertical-align:middle}.solution-usage-step-pill[data-v-0f49823e]:hover{background:#0071e326;border-color:var(--primary, #0071e3);transform:translateY(-.5px)}.usage-step-pin[data-v-0f49823e]{font-size:10px}.dark .solution-usage-step-pill[data-v-0f49823e]{background:#0071e329;border-color:#3b82f659;color:#60a5fa}.dark .solution-usage-step-pill[data-v-0f49823e]:hover{background:#0071e340;border-color:#60a5fa}.solution-material-list[data-v-0f49823e]{display:flex;flex-direction:column;gap:8px}.solution-resource-row[data-v-0f49823e]{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--surface);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.solution-resource-row.is-linked[data-v-0f49823e]{background:#fbfbfd;border-color:#00000012;box-shadow:0 1px 2px #00000005}.dark .solution-resource-row.is-linked[data-v-0f49823e]{background:#ffffff06;border-color:#ffffff14}.solution-linked-main[data-v-0f49823e]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.solution-linked-info[data-v-0f49823e]{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;min-width:0;flex:1}.solution-material-name[data-v-0f49823e]{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;color:var(--foreground);font-size:15px;font-weight:600;text-align:left;cursor:pointer}.solution-material-name[data-v-0f49823e]:hover{color:var(--primary)}.linked-flask-icon[data-v-0f49823e]{color:var(--primary);flex-shrink:0}.solution-linked-summary[data-v-0f49823e]{font-size:13px;color:var(--text-secondary);overflow-wrap:anywhere}.solution-linked-right[data-v-0f49823e]{display:flex;align-items:center;gap:8px}.solution-amount-field[data-v-0f49823e]{width:165px;padding:6px 10px;font-size:13.5px;background:var(--surface);border:1px solid var(--border)}.solution-manual-row .solution-amount-field[data-v-0f49823e]{width:100%;background:var(--background);border-color:transparent}.solution-amount-badge[data-v-0f49823e]{font-size:13px;font-weight:500;padding:3px 9px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--foreground);font-variant-numeric:tabular-nums}.solution-inline-fold[data-v-0f49823e]{margin-top:8px;border-top:1px solid rgba(0,0,0,.05);padding-top:6px}.dark .solution-inline-fold[data-v-0f49823e]{border-top-color:#ffffff14}.solution-fold-summary[data-v-0f49823e]{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:12px;font-weight:500;color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:3px 6px;border-radius:6px;transition:color .15s ease,background .15s ease;list-style:none}.solution-fold-summary[data-v-0f49823e]::-webkit-details-marker{display:none}.solution-fold-summary[data-v-0f49823e]:hover{color:var(--primary);background:#0071e30f}.solution-fold-chevron[data-v-0f49823e]{color:var(--text-secondary);transition:transform .2s ease;flex-shrink:0}.solution-inline-fold[open] .solution-fold-chevron[data-v-0f49823e]{transform:rotate(90deg)}.solution-inline-fold-body[data-v-0f49823e]{margin-top:8px;padding:12px;border-radius:8px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 3px #00000005}.dark .solution-inline-fold-body[data-v-0f49823e]{background:#ffffff09;border-color:#ffffff14}.solution-manual-row[data-v-0f49823e]{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.9fr) auto 32px;gap:8px;align-items:center}.solution-manual-row .solution-input[data-v-0f49823e]{padding:7px 10px;font-size:13.5px}.manual-link-pill[data-v-0f49823e]{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:var(--background);color:var(--text-secondary);font-size:12px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color .15s ease,border-color .15s ease}.manual-link-pill[data-v-0f49823e]:hover{color:var(--primary);border-color:var(--primary)}.solution-manual-read[data-v-0f49823e]{display:flex;align-items:center;justify-content:space-between;gap:12px}.solution-manual-read-left[data-v-0f49823e]{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.resource-delete-btn[data-v-0f49823e]{opacity:.5;transition:opacity .15s ease}.solution-resource-row:hover .resource-delete-btn[data-v-0f49823e],.solution-equipment-row:hover .resource-delete-btn[data-v-0f49823e],.resource-delete-btn[data-v-0f49823e]:focus-visible{opacity:1}.solution-empty-hint[data-v-0f49823e]{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.equipment-fold[data-v-0f49823e]{margin-top:16px;padding-top:12px}.solution-equipment-row[data-v-0f49823e]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 32px;gap:8px;align-items:center}.solution-equipment-row .solution-input[data-v-0f49823e]{padding:7px 10px;font-size:13.5px}.add-equipment-btn[data-v-0f49823e]{justify-self:start}@media(max-width:780px){.solution-manual-row[data-v-0f49823e]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.protocol-print-root[data-v-9a272cc7]{display:none}@media print{.protocol-print-root[data-v-9a272cc7]{display:block;color:#1d1d1f;background:#fff;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Helvetica Neue,sans-serif;font-size:10.5pt;line-height:1.55}.print-header[data-v-9a272cc7]{padding-bottom:10mm;border-bottom:.5pt solid #c8c8cd}.print-header h1[data-v-9a272cc7]{margin:0 0 4mm;font-size:22pt;font-weight:600;letter-spacing:-.02em;line-height:1.2}.print-meta[data-v-9a272cc7]{display:flex;flex-wrap:wrap;gap:2mm 6mm;color:#55555a;font-size:9pt}.print-resources[data-v-9a272cc7]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10mm;padding:7mm 0;border-bottom:.5pt solid #d8d8dc;break-inside:avoid}.print-resources.single[data-v-9a272cc7]{grid-template-columns:minmax(0,1fr)}.print-resource-group h2[data-v-9a272cc7]{margin:0 0 2mm;font-size:11pt;font-weight:600}.print-resource-group ul[data-v-9a272cc7]{margin:0;padding:0;list-style:none}.print-resource-group li[data-v-9a272cc7]{display:flex;gap:2mm;margin:0 0 1.2mm;font-size:9.5pt;break-inside:avoid}.print-resource-group li strong[data-v-9a272cc7]{font-weight:600}.print-resource-group li span[data-v-9a272cc7]{color:#55555a}.print-section[data-v-9a272cc7]{margin-top:8mm}.print-section-title[data-v-9a272cc7]{display:flex;align-items:baseline;gap:3mm;margin:0 0 3mm;padding-bottom:2mm;border-bottom:.5pt solid #d8d8dc;font-size:13pt;font-weight:600;break-after:avoid}.print-section-number[data-v-9a272cc7]{color:#77777c;font-size:9pt;font-weight:500;font-variant-numeric:tabular-nums}.print-step[data-v-9a272cc7]{display:flex;gap:3mm;padding:2.5mm 0;break-inside:avoid}.print-checkbox[data-v-9a272cc7]{width:3.2mm;height:3.2mm;margin-top:1.2mm;border:.6pt solid #55555a;flex-shrink:0}.print-step-body[data-v-9a272cc7]{flex:1;min-width:0}.print-step-text[data-v-9a272cc7]{margin:0;font-size:10.5pt;line-height:1.55;overflow-wrap:anywhere}.print-step-number[data-v-9a272cc7]{display:inline-block;min-width:5mm;color:#77777c;font-size:8.5pt;font-weight:500;font-variant-numeric:tabular-nums}.print-params[data-v-9a272cc7]{margin:1.5mm 0 0;color:#55555a;font-size:9pt}.print-warning[data-v-9a272cc7]{margin:1.5mm 0 0;padding:1.8mm 2.5mm;border-radius:1.5mm;background:#f5f5f7;font-size:9.5pt;break-inside:avoid}.print-warning strong[data-v-9a272cc7]{font-weight:600}.print-empty[data-v-9a272cc7]{margin:12mm 0;color:#77777c;font-size:10pt}.print-footer[data-v-9a272cc7]{display:flex;justify-content:space-between;gap:8mm;margin-top:12mm;padding-top:3mm;border-top:.5pt solid #d8d8dc;color:#77777c;font-size:8.5pt}}.protocol-page[data-v-0d335165]{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--background)}.protocol-loading[data-v-0d335165]{min-height:100%;display:grid;place-items:center;color:var(--muted-foreground);font-size:14px}.page-topbar[data-v-0d335165]{height:64px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--border);position:relative;z-index:10}.topbar-left[data-v-0d335165]{min-width:0}.save-state[data-v-0d335165]{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-dot[data-v-0d335165]{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}.save-dot.saving[data-v-0d335165]{background:var(--primary)}.save-dot.error[data-v-0d335165]{background:var(--red-text)}.save-dot.dirty[data-v-0d335165]{background:var(--primary)}.topbar-right[data-v-0d335165]{display:flex;align-items:center;gap:8px;flex-shrink:0}.toolbar-icon[data-v-0d335165]{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--text-secondary);display:grid;place-items:center;transition:background-color .3s var(--ease-apple),color .3s var(--ease-apple),transform .2s var(--ease-apple)}.toolbar-icon[data-v-0d335165]:hover{background:var(--background);color:var(--foreground)}.toolbar-icon[data-v-0d335165]:active{transform:scale(.96)}.menu-wrap[data-v-0d335165],.status-wrap[data-v-0d335165]{position:relative;display:inline-flex}.popover[data-v-0d335165]{position:absolute;top:calc(100% + 8px);right:0;z-index:60;min-width:220px;padding:6px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:2px}.popover-item[data-v-0d335165]{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:var(--foreground);font-size:13px;text-align:left;white-space:nowrap;transition:background-color .2s var(--ease-apple),color .2s var(--ease-apple)}.popover-item[data-v-0d335165]:hover{background:var(--background)}.popover-switch-item[data-v-0d335165]{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.popover-switch-label[data-v-0d335165]{display:flex;align-items:center;gap:10px}.popover-item[data-v-0d335165]:disabled{opacity:.4;cursor:default}.popover-item.danger[data-v-0d335165]{color:var(--red-text)}.popover-item kbd[data-v-0d335165]{margin-left:auto;font-family:inherit;font-size:12px;color:var(--muted-foreground)}.popover-divider[data-v-0d335165]{height:1px;background:var(--border);margin:4px 2px}.status-trigger[data-v-0d335165]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:0;border-radius:999px;font-size:12px;font-weight:500;line-height:1.5;transition:transform .2s var(--ease-apple),opacity .2s var(--ease-apple)}.status-trigger[data-v-0d335165]:hover{opacity:.82}.status-trigger[data-v-0d335165]:active{transform:scale(.97)}.status-menu[data-v-0d335165]{left:0;right:auto;min-width:240px}.status-option[data-v-0d335165]{display:flex;align-items:center;gap:12px;width:100%;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:var(--foreground);text-align:left;transition:background-color .2s var(--ease-apple)}.status-option[data-v-0d335165]:hover{background:var(--background)}.status-option-label[data-v-0d335165]{flex:1;display:flex;flex-direction:column;gap:1px}.status-option-label strong[data-v-0d335165]{font-size:13px;font-weight:600}.status-option-label small[data-v-0d335165]{font-size:12px;color:var(--muted-foreground)}.page-content-scroll[data-v-0d335165]{flex:1;overflow-y:auto;min-height:0;padding:32px 32px 80px}.protocol-sheet[data-v-0d335165]{max-width:880px;margin:0 auto;padding:48px 56px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm)}.sheet-header[data-v-0d335165]{margin-bottom:32px}.title-input[data-v-0d335165]{width:100%;border:0;background:transparent;font-size:34px;font-weight:600;letter-spacing:-.03em;line-height:1.2;padding:0;outline:none;color:var(--foreground)}.title-input[data-v-0d335165]::placeholder{color:var(--muted-foreground);opacity:.75}.title-input[data-v-0d335165]:focus-visible{outline:2px solid rgba(0,113,227,.35);outline-offset:4px;border-radius:4px}.title-heading[data-v-0d335165]{font-size:34px;font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0}.meta-line[data-v-0d335165]{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px;font-size:12px;color:var(--muted-foreground)}.meta-line>span[data-v-0d335165]{white-space:nowrap}.source-chip[data-v-0d335165]{display:inline-flex;align-items:center;gap:4px;max-width:260px;padding:2px 8px;border-radius:999px;background:var(--background);color:var(--text-secondary);overflow:hidden}.source-chip>span[data-v-0d335165]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-hint[data-v-0d335165]{font-size:12px;color:var(--muted-foreground);margin:14px 0 0}.reading-progress[data-v-0d335165]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px;font-size:12px;color:var(--text-secondary)}.progress-meta[data-v-0d335165]{font-weight:500;white-space:nowrap}.progress-track[data-v-0d335165]{flex:1;min-width:120px;height:4px;border-radius:999px;background:var(--background);overflow:hidden}.progress-fill[data-v-0d335165]{height:100%;border-radius:999px;background:var(--primary);transition:width .3s var(--ease-apple)}.progress-percent[data-v-0d335165]{color:var(--muted-foreground);min-width:32px;text-align:right;font-variant-numeric:tabular-nums}.reset-btn[data-v-0d335165]{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--primary);font-size:12px;padding:3px 6px;border-radius:6px;white-space:nowrap}.reset-btn[data-v-0d335165]:hover{background:var(--accent)}.reset-btn[data-v-0d335165]:disabled{opacity:.4;cursor:default}.sections-container[data-v-0d335165]{display:flex;flex-direction:column;gap:40px}.section-block[data-v-0d335165]{display:flex;flex-direction:column;gap:8px}.section-header[data-v-0d335165]{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border)}.section-number[data-v-0d335165]{font-size:12px;color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-weight:500;flex-shrink:0}.section-title-input[data-v-0d335165]{flex:1;min-width:0;border:0;background:transparent;font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:1.4;padding:0;outline:none;color:var(--foreground)}.section-title-input[data-v-0d335165]::placeholder{color:var(--muted-foreground);opacity:.7}.section-title-input[data-v-0d335165]:focus-visible{outline:2px solid rgba(0,113,227,.3);outline-offset:3px;border-radius:4px}.section-title-text[data-v-0d335165]{flex:1;min-width:0;margin:0;font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:1.4}.section-actions[data-v-0d335165]{display:flex;gap:2px;opacity:0;transition:opacity .2s var(--ease-apple)}.section-header:hover .section-actions[data-v-0d335165],.section-header:focus-within .section-actions[data-v-0d335165]{opacity:1}.icon-btn[data-v-0d335165]{width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:var(--muted-foreground);display:grid;place-items:center;transition:background-color .2s var(--ease-apple),color .2s var(--ease-apple)}.icon-btn[data-v-0d335165]:hover{background:var(--background);color:var(--foreground)}.icon-btn.danger[data-v-0d335165]:hover{color:var(--red-text)}.steps-flow[data-v-0d335165]{display:flex;flex-direction:column;gap:2px}.step-item[data-v-0d335165]{display:flex;align-items:flex-start;gap:14px;padding:12px 10px;border-radius:12px;transition:background-color .25s var(--ease-apple),box-shadow .25s var(--ease-apple)}.step-item[data-v-0d335165]:hover,.step-item[data-v-0d335165]:focus-within{background:var(--background)}.step-item[data-v-0d335165]:focus-within{box-shadow:0 0 0 2px #0071e329}.step-item.completed[data-v-0d335165]{opacity:.72}.step-item.completed .step-text-display[data-v-0d335165]{color:var(--muted-foreground);text-decoration:line-through;text-decoration-color:var(--border-strong)}.step-badge-col[data-v-0d335165]{padding-top:3px;flex-shrink:0}.step-num-badge[data-v-0d335165]{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--background);color:var(--text-secondary);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.step-check-btn[data-v-0d335165]{width:28px;height:28px;padding:0;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface);color:#fff;display:grid;place-items:center;transition:background-color .2s var(--ease-apple),border-color .2s var(--ease-apple),transform .2s var(--ease-apple)}.step-check-btn[data-v-0d335165]:hover{border-color:var(--primary)}.step-check-btn[data-v-0d335165]:active{transform:scale(.94)}.step-check-btn[aria-checked=true][data-v-0d335165]{background:var(--green);border-color:var(--green)}.step-body-col[data-v-0d335165]{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.step-textarea[data-v-0d335165]{width:100%;min-height:28px;border:0;background:transparent;font-size:15px;line-height:1.75;padding:1px 0;resize:none;overflow:hidden;outline:none;font-family:inherit;color:var(--foreground)}.step-textarea[data-v-0d335165]::placeholder{color:var(--muted-foreground);opacity:.7}.step-text-display[data-v-0d335165]{margin:0;font-size:15px;line-height:1.75;color:var(--foreground);white-space:pre-wrap;overflow-wrap:anywhere}.step-params-bar[data-v-0d335165]{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:24px}.param-chip[data-v-0d335165]{display:inline-flex;align-items:center;gap:4px;height:24px;box-sizing:border-box;padding:0 8px;border-radius:999px;background:var(--background);color:var(--text-secondary);font-size:12px;font-weight:500;line-height:1;vertical-align:middle;white-space:nowrap;transition:all .15s ease}.param-chip svg[data-v-0d335165]{flex-shrink:0}.param-chip>span[data-v-0d335165]{line-height:1}.param-chip.duration[data-v-0d335165]{background:#0071e314;color:var(--primary)}.dark .param-chip.duration[data-v-0d335165]{background:#2997ff26;color:#2997ff}.param-chip.temperature[data-v-0d335165]{background:#f59e0b1f;color:#b45309}.dark .param-chip.temperature[data-v-0d335165]{background:#f59e0b2e;color:#fbbf24}.param-chip.warning[data-v-0d335165]{background:#fff2f1;color:var(--red-text);flex:1 1 260px;min-width:0;height:auto;min-height:24px;padding:3px 9px;white-space:normal}.param-chip.param-timer[data-v-0d335165]{border:0;margin:0;appearance:none;-webkit-appearance:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:500;line-height:1;height:24px;box-sizing:border-box;padding:0 8px;transition:background-color .2s var(--ease-apple),color .2s var(--ease-apple),box-shadow .2s var(--ease-apple)}.param-chip.param-timer[data-v-0d335165]:hover{background:#0071e326;color:var(--primary)}.param-chip.param-timer.timing[data-v-0d335165]{background:#0071e32e;color:var(--primary);box-shadow:inset 0 0 0 1px #0071e347}.dark .param-chip.warning[data-v-0d335165]{background:#2a1517;color:#ff6961}.param-chip.material[data-v-0d335165]{background:#0071e314;border:none;color:var(--primary);padding:0 6px 0 8px;gap:4px}.param-chip.material.is-linked[data-v-0d335165]{background:#0071e314;border:none}.dark .param-chip.material[data-v-0d335165]{background:#2997ff26;border:none;color:#2997ff}.param-material-icon[data-v-0d335165]{color:var(--primary);opacity:.85;stroke-width:1.75;flex-shrink:0}.dark .param-material-icon[data-v-0d335165]{color:#2997ff}.param-material-name[data-v-0d335165]{border:0;background:transparent;color:inherit;font-size:12px;font-weight:500;cursor:pointer;padding:0;text-decoration:none;transition:opacity .15s ease}.param-material-name[data-v-0d335165]:hover{opacity:.75}.param-chip-divider[data-v-0d335165]{width:1px;height:12px;background:#0071e338;flex-shrink:0;margin:0 2px}.dark .param-chip-divider[data-v-0d335165]{background:#2997ff47}.param-input.material-amount[data-v-0d335165]{width:auto;min-width:32px;max-width:140px;field-sizing:content;text-align:center;padding:0 4px;margin:0;border:none;font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:500;color:inherit}.param-input.material-amount[data-v-0d335165]::placeholder{color:inherit;opacity:.55;text-align:center}.param-material-amount-badge[data-v-0d335165]{font-size:11.5px;font-weight:500;opacity:.9;font-variant-numeric:tabular-nums;padding:0 4px;text-align:center;border:none}.param-chip.material .param-remove[data-v-0d335165]{margin-left:2px}.param-suggest-chip[data-v-0d335165]{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border-radius:999px;background:#10b98114;border:1px dashed rgba(16,185,129,.35);color:#059669;font-size:11.5px;font-weight:500;cursor:pointer;transition:all .15s ease}.param-suggest-chip[data-v-0d335165]:hover{background:#10b98129;border-color:#10b981;transform:translateY(-.5px)}.suggest-extracted-amt[data-v-0d335165]{font-size:10.5px;opacity:.8}.dark .param-suggest-chip[data-v-0d335165]{background:#10b98126;border-color:#34d39966;color:#34d399}.param-menu-material-group[data-v-0d335165]{display:flex;flex-direction:column;gap:2px}.param-menu-section-label[data-v-0d335165]{display:flex;align-items:center;gap:5px;padding:4px 8px 2px;font-size:11px;font-weight:600;color:var(--muted-foreground)}.param-menu-item.subitem[data-v-0d335165]{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 6px 16px;font-size:12.5px}.param-menu-item.action-btn[data-v-0d335165]{color:var(--primary);font-size:12.5px}.subitem-badge[data-v-0d335165]{font-size:10px;padding:1px 4px;border-radius:4px;background:#0071e31a;color:var(--primary)}.param-menu-divider[data-v-0d335165]{height:1px;background:var(--border);margin:4px 0}.is-step-highlight[data-v-0d335165]{animation:step-flash-0d335165 2s ease-out}@keyframes step-flash-0d335165{0%{background-color:#0071e32e;box-shadow:0 0 0 3px #0071e34d;border-radius:8px}to{background-color:transparent;box-shadow:none}}.param-input[data-v-0d335165]{border:0;background:transparent;font-size:12px;font-weight:500;line-height:1;padding:0;outline:none;color:inherit;font-family:inherit;height:100%}.param-input.duration[data-v-0d335165]{width:66px}.param-input.temperature[data-v-0d335165]{width:76px}.param-input.warning-input[data-v-0d335165]{flex:1;width:auto;min-width:0;max-width:none}.param-input[data-v-0d335165]:focus-visible{box-shadow:0 0 0 2px #0071e340;border-radius:4px}.param-remove[data-v-0d335165]{border:0;background:transparent;color:inherit;padding:0 1px;display:grid;place-items:center;opacity:.6}.param-remove[data-v-0d335165]:hover{opacity:1}.param-unit-btn[data-v-0d335165]{border:1px solid rgba(180,83,9,.3);background:#fffc;color:#b45309;border-radius:4px;font-size:10px;font-weight:600;padding:1px 4px;line-height:1;cursor:pointer;margin-left:2px;transition:all .15s ease}.dark .param-unit-btn[data-v-0d335165]{border-color:#fbbf244d;background:#0000004d;color:#fbbf24}.param-unit-btn[data-v-0d335165]:hover{background:#b45309;color:#fff}.dark .param-unit-btn[data-v-0d335165]:hover{background:#fbbf24;color:#000}.param-menu-temp-group[data-v-0d335165]{display:flex;flex-direction:column;gap:4px}.param-menu-temp-presets[data-v-0d335165]{display:flex;flex-wrap:wrap;gap:4px;padding:0 8px 6px}.param-temp-preset-chip[data-v-0d335165]{border:1px solid var(--border);background:var(--background);color:var(--text-secondary);border-radius:999px;font-size:10.5px;padding:2px 6px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.param-temp-preset-chip[data-v-0d335165]:hover{border-color:var(--primary);color:var(--primary);background:#0071e314}.param-add-wrap[data-v-0d335165]{position:relative;display:inline-flex}.param-add-btn[data-v-0d335165]{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--primary);font-size:12px;padding:3px 8px;border-radius:999px}.param-add-btn[data-v-0d335165]:hover{background:var(--accent)}.param-menu[data-v-0d335165]{position:absolute;top:calc(100% + 4px);left:0;z-index:20;min-width:150px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:2px}.param-menu-item[data-v-0d335165]{display:flex;align-items:center;gap:8px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--foreground);font-size:13px;text-align:left}.param-menu-item[data-v-0d335165]:hover{background:var(--background)}.step-actions-col[data-v-0d335165]{display:flex;flex-direction:column;gap:2px;opacity:0;transition:opacity .2s var(--ease-apple);flex-shrink:0}.step-item:hover .step-actions-col[data-v-0d335165],.step-item:focus-within .step-actions-col[data-v-0d335165]{opacity:1}.step-action-btn[data-v-0d335165]{width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:var(--muted-foreground);display:grid;place-items:center;transition:background-color .2s var(--ease-apple),color .2s var(--ease-apple)}.step-action-btn[data-v-0d335165]:hover{background:var(--surface);color:var(--foreground)}.step-action-btn.danger[data-v-0d335165]:hover{color:var(--red-text)}.step-action-btn[data-v-0d335165]:disabled{opacity:.25;cursor:default}.add-step-row[data-v-0d335165]{margin-top:4px}.add-step-btn[data-v-0d335165]{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;padding:8px 12px;border-radius:10px}.add-step-btn[data-v-0d335165]:hover{background:var(--background);color:var(--foreground)}.add-section-row[data-v-0d335165]{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}.add-section-btn[data-v-0d335165]{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--primary);font-size:14px;font-weight:500;padding:8px 12px;border-radius:10px}.add-section-btn[data-v-0d335165]:hover{background:var(--accent)}@media(max-width:1200px){.page-content-scroll[data-v-0d335165]{padding:24px 24px 64px}.protocol-sheet[data-v-0d335165]{padding:40px}}@media(max-width:1060px){.page-topbar[data-v-0d335165]{padding:0 16px}.page-content-scroll[data-v-0d335165]{padding:20px 16px 56px}.protocol-sheet[data-v-0d335165]{padding:32px 28px}.title-input[data-v-0d335165],.title-heading[data-v-0d335165]{font-size:30px}.section-title-input[data-v-0d335165],.section-title-text[data-v-0d335165]{font-size:18px}.source-chip[data-v-0d335165]{max-width:180px}.param-input.warning-input[data-v-0d335165]{flex:1;width:auto;min-width:0;max-width:none}}@media(max-width:768px){.page-topbar[data-v-0d335165]{display:none}.page-content-scroll[data-v-0d335165]{padding:12px 8px calc(76px + env(safe-area-inset-bottom,0px)) 8px}.protocol-sheet[data-v-0d335165]{padding:16px 12px;border-radius:12px;border:1px solid var(--border);box-shadow:none;max-width:100%}.title-input[data-v-0d335165],.title-heading[data-v-0d335165]{font-size:20px;line-height:1.3}.sheet-header-meta[data-v-0d335165]{gap:6px}.reading-progress[data-v-0d335165]{margin-top:10px;padding:8px 10px}.step-item[data-v-0d335165]{gap:10px;padding:8px 0}.step-badge-col[data-v-0d335165]{width:32px;flex-shrink:0}.step-check-btn[data-v-0d335165]{width:30px;height:30px;min-width:30px;min-height:30px;border-radius:8px}.step-text-display[data-v-0d335165]{font-size:15px;line-height:1.6}.step-params-bar[data-v-0d335165]{gap:6px}.param-chip[data-v-0d335165]{padding:4px 8px;font-size:12px}.param-chip.duration.param-timer[data-v-0d335165]{padding:6px 10px;font-weight:600}}.protocol-welcome-view[data-v-8ab8c55b]{min-height:100%;display:flex;align-items:center;justify-content:center;padding:48px 32px 72px}.welcome-box[data-v-8ab8c55b]{max-width:620px;text-align:center}.welcome-box h1[data-v-8ab8c55b]{font-size:36px;font-weight:600;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px}.welcome-box>p[data-v-8ab8c55b]{font-size:15px;line-height:1.8;color:var(--text-secondary);margin:0 auto;max-width:480px}.welcome-actions[data-v-8ab8c55b]{display:flex;justify-content:center;gap:12px;margin-top:30px;flex-wrap:wrap}.welcome-features[data-v-8ab8c55b]{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:40px;padding-top:24px;border-top:1px solid var(--border);color:var(--muted-foreground);font-size:13px;flex-wrap:wrap}.welcome-features span[data-v-8ab8c55b]{display:inline-flex;align-items:center;gap:7px}.protocol-timer-bar[data-v-a2f60390]{position:fixed;right:24px;bottom:52px;z-index:30;display:flex;align-items:center;gap:12px;width:min(420px,calc(100vw - 32px));padding:10px 12px 13px 14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--foreground);box-shadow:var(--shadow-lg)}.timer-symbol[data-v-a2f60390]{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--primary)}.timer-copy[data-v-a2f60390]{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.timer-copy strong[data-v-a2f60390]{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-copy span[data-v-a2f60390]{font-size:12px;color:var(--muted-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-time[data-v-a2f60390]{flex-shrink:0;font-size:18px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.timer-control[data-v-a2f60390],.timer-stop[data-v-a2f60390]{width:30px;height:30px;flex-shrink:0;display:grid;place-items:center;border:0;border-radius:50%;background:var(--background);color:var(--text-secondary);transition:background-color .2s var(--ease-apple),color .2s var(--ease-apple),transform .2s var(--ease-apple)}.timer-control[data-v-a2f60390]:hover,.timer-stop[data-v-a2f60390]:hover{background:var(--accent);color:var(--primary)}.timer-control[data-v-a2f60390]:active,.timer-stop[data-v-a2f60390]:active{transform:scale(.95)}.timer-progress[data-v-a2f60390]{position:absolute;left:14px;right:14px;bottom:6px;height:3px;border-radius:999px;background:var(--background);overflow:hidden}.timer-progress>span[data-v-a2f60390]{display:block;height:100%;border-radius:inherit;background:var(--primary);transition:width .25s linear}.finished .timer-symbol[data-v-a2f60390]{background:var(--surface);color:var(--green-text)}.finished .timer-time[data-v-a2f60390]{color:var(--green-text)}.finished .timer-progress>span[data-v-a2f60390]{background:var(--green)}@media(max-width:1060px){.protocol-timer-bar[data-v-a2f60390]{right:16px;bottom:44px;gap:9px;padding-left:10px;width:min(360px,calc(100vw - 24px))}.timer-time[data-v-a2f60390]{font-size:16px}.timer-symbol[data-v-a2f60390]{width:30px;height:30px}}@media(max-width:768px){.protocol-timer-bar[data-v-a2f60390]{left:12px;right:12px;bottom:calc(66px + env(safe-area-inset-bottom,0px));width:auto;border-radius:14px;padding:10px 12px;gap:10px;box-shadow:0 4px 20px #00000026}}.solution-list[data-v-d90afd69]{background:var(--surface);display:flex;flex-direction:column;height:100%;min-height:0;border-right:1px solid var(--border)}.list-header[data-v-d90afd69]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:20px 18px 12px}.list-header h2[data-v-d90afd69]{margin:0;font-size:20px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:baseline;gap:6px}.list-header h2 span[data-v-d90afd69]{font-size:13px;font-weight:500;color:var(--text-secondary)}.list-header p[data-v-d90afd69]{margin:4px 0 0;font-size:12.5px;color:var(--text-secondary)}.header-actions[data-v-d90afd69]{display:flex;align-items:center;gap:2px}.spinning[data-v-d90afd69]{animation:spin-d90afd69 .9s linear infinite}@keyframes spin-d90afd69{to{transform:rotate(360deg)}}.solution-list-controls[data-v-d90afd69]{display:flex;flex-direction:column;gap:10px;padding:0 16px 14px}.search-field[data-v-d90afd69]{position:relative;display:flex;align-items:center}.search-field>svg[data-v-d90afd69]:first-child{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.search-field[data-v-d90afd69] input{padding-left:36px;padding-right:30px;height:36px;font-size:13.5px;border-radius:10px}.clear-search-btn[data-v-d90afd69]{position:absolute;right:8px;width:20px;height:20px;border:0;border-radius:999px;background:#78788029;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.clear-search-btn[data-v-d90afd69]:hover{color:var(--foreground)}.solution-archive-banner[data-v-d90afd69]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:10px;background:var(--background);font-size:12px;color:var(--text-secondary)}.archive-back-link[data-v-d90afd69]{border:0;background:transparent;padding:0;color:var(--primary);font-size:12px;font-weight:500;cursor:pointer}.solution-tag-filter-bar[data-v-d90afd69]{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:2px 0 4px}.solution-tag-filter-pill[data-v-d90afd69]{display:inline-flex;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:500;border-radius:999px;border:1px solid var(--border);background:var(--background);color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:all .15s ease;box-sizing:border-box}.solution-tag-filter-pill[data-v-d90afd69]:hover{border-color:var(--primary);color:var(--primary)}.solution-tag-filter-pill.active[data-v-d90afd69]{background:var(--primary);border-color:var(--primary);color:#fff}.solution-action-buttons[data-v-d90afd69]{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px}.new-solution-btn[data-v-d90afd69],.new-reagent-btn[data-v-d90afd69]{border-radius:999px;height:36px;font-size:13px}.shortcut-badge[data-v-d90afd69]{font-size:11px;opacity:.78;margin-left:2px}.solution-list-cards[data-v-d90afd69]{overflow-y:auto;flex:1;min-height:0;padding:4px 14px 20px;display:flex;flex-direction:column;gap:8px}.solution-list-card[data-v-d90afd69]{background:var(--background);border:1px solid transparent;border-radius:14px;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;height:112px;flex-shrink:0;box-sizing:border-box}.solution-list-card[data-v-d90afd69]:hover{border-color:var(--border)}.solution-list-card.active[data-v-d90afd69]{background:var(--accent);border-color:#0071e347}.solution-card-btn[data-v-d90afd69]{display:flex;flex-direction:column;gap:5px;width:100%;height:100%;text-align:left;border:0;background:transparent;color:var(--foreground);padding:10px 12px;border-radius:13px;cursor:pointer;box-sizing:border-box}.solution-card-btn[data-v-d90afd69]:disabled{cursor:default}.card-title-row[data-v-d90afd69]{display:flex;align-items:center;gap:7px;min-width:0;width:100%;height:20px;flex-shrink:0}.card-kind-icon[data-v-d90afd69]{color:var(--primary);flex-shrink:0}.card-kind-icon.reagent[data-v-d90afd69]{color:#059669}.card-title-text[data-v-d90afd69]{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;color:var(--foreground)}.dirty-dot[data-v-d90afd69]{width:7px;height:7px;border-radius:999px;background:var(--primary);flex-shrink:0}.card-ph-tag[data-v-d90afd69]{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;background:#0071e314;color:var(--primary);font-variant-numeric:tabular-nums;line-height:1;box-sizing:border-box}.dark .card-ph-tag[data-v-d90afd69]{background:#0071e32e;color:#60a5fa}.card-meta-ribbon[data-v-d90afd69]{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow:hidden;height:20px;min-height:20px;line-height:1;flex-shrink:0}.meta-chip[data-v-d90afd69]{display:inline-flex;align-items:center;height:20px;padding:0 8px;font-size:11px;font-weight:500;border-radius:999px;white-space:nowrap;line-height:1;box-sizing:border-box;flex-shrink:0}.meta-chip.tag[data-v-d90afd69]{background:#0071e317;color:var(--primary)}.dark .meta-chip.tag[data-v-d90afd69]{background:#0071e333;color:#60a5fa}.meta-chip.stock[data-v-d90afd69]{background:#f59e0b1f;color:#b45309}.dark .meta-chip.stock[data-v-d90afd69]{background:#f59e0b38;color:#fbbf24}.meta-chip.working[data-v-d90afd69]{background:#10b9811f;color:#047857}.dark .meta-chip.working[data-v-d90afd69]{background:#10b98138;color:#34d399}.meta-chip.raw[data-v-d90afd69]{background:#6b72801c;color:#4b5563}.dark .meta-chip.raw[data-v-d90afd69]{background:#6b728038;color:#9ca3af}.meta-text-muted[data-v-d90afd69]{font-size:11.5px;color:var(--muted-foreground);margin-left:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.card-formula-line[data-v-d90afd69]{display:block;font-size:12px;line-height:18px;min-width:0;width:100%;margin:0;height:18px;overflow:hidden;box-sizing:border-box;flex-shrink:0}.formula-text[data-v-d90afd69]{color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;line-height:18px}.solution-card-footer[data-v-d90afd69]{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:18px;flex-shrink:0;margin-top:auto;padding-top:0}.card-date[data-v-d90afd69]{font-size:11.5px;color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:18px}.card-footer-relations[data-v-d90afd69]{display:flex;align-items:center;gap:6px;margin-left:auto;height:18px}.footer-relation[data-v-d90afd69]{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;line-height:1;white-space:nowrap}.relation-dot[data-v-d90afd69]{width:6px;height:6px;border-radius:999px;display:inline-block;flex-shrink:0}.footer-relation.as-stock[data-v-d90afd69]{color:#059669}.footer-relation.as-stock .relation-dot[data-v-d90afd69]{background:#10b981}.dark .footer-relation.as-stock[data-v-d90afd69]{color:#34d399}.footer-relation.uses-stock[data-v-d90afd69]{color:var(--primary)}.footer-relation.uses-stock .relation-dot[data-v-d90afd69]{background:var(--primary)}.dark .footer-relation.uses-stock[data-v-d90afd69]{color:#60a5fa}.dark .footer-relation.uses-stock .relation-dot[data-v-d90afd69]{background:#60a5fa}.footer-relation.neutral[data-v-d90afd69]{color:var(--muted-foreground);font-weight:400}.restore-bar[data-v-d90afd69]{padding:0 14px 12px;display:flex;justify-content:flex-end}.app-select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;height:44px;padding:0 14px;border:1px solid transparent;border-radius:var(--radius);background:var(--muted);color:var(--foreground);font-size:13px;text-align:left;cursor:pointer;transition:background-color .2s var(--ease-apple),border-color .2s var(--ease-apple),box-shadow .2s var(--ease-apple)}.app-select-trigger.sm{height:32px;padding:0 10px;font-size:12px}.app-select-trigger:hover:not(:disabled){border-color:var(--border-strong)}.app-select-trigger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.app-select-trigger[data-state=open]{border-color:var(--primary)}.app-select-trigger[data-placeholder]{color:var(--text-tertiary)}.app-select-trigger:disabled{opacity:.4;cursor:default}.app-select-value{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-select-chevron{flex-shrink:0;color:var(--text-secondary);transition:transform .2s var(--ease-apple)}.app-select-trigger[data-state=open] .app-select-chevron{transform:rotate(180deg)}.app-select-content{z-index:100;min-width:var(--reka-select-trigger-width);max-width:calc(100vw - 24px);max-height:min(340px,var(--reka-select-content-available-height));padding:5px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-elevated);color:var(--foreground);box-shadow:var(--shadow-lg);transform-origin:var(--reka-select-content-transform-origin);animation:select-appear .15s var(--ease-apple)}.app-select-viewport{max-height:inherit}.app-select-item{position:relative;display:flex;align-items:center;min-height:34px;gap:8px;padding:7px 32px 7px 10px;border-radius:calc(var(--radius) - 5px);font-size:13px;line-height:1.5;outline:none;-webkit-user-select:none;user-select:none;cursor:pointer}.app-select-text{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-select-item[data-highlighted]{background:var(--accent)}.app-select-item[data-state=checked]{color:var(--primary);font-weight:500}.app-select-item[data-disabled]{opacity:.4;cursor:default}.app-select-indicator{position:absolute;right:10px;display:flex;color:var(--primary)}.app-select-scroll{display:flex;align-items:center;justify-content:center;height:22px;color:var(--text-secondary)}@keyframes select-appear{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.app-select-trigger,.app-select-trigger.sm,.app-select-item{min-height:40px}}.sequence-card[data-v-227256ef]{display:flex;align-items:center;border:0;border-radius:var(--radius);margin:2px 0;background:transparent;min-width:0}.sequence-card[data-v-227256ef]:hover{background:var(--surface-hover)}.sequence-card.selected[data-v-227256ef]{background:var(--accent);box-shadow:inset 3px 0 var(--primary)}.seq-row-main[data-v-227256ef]{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px;text-align:left;padding:12px;background:none;border:0;color:var(--foreground);cursor:pointer}.seq-row-title[data-v-227256ef]{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seq-row-meta[data-v-227256ef]{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;line-height:1.5;color:var(--text-secondary)}.seq-row-actions[data-v-227256ef]{display:flex;gap:2px;padding-right:6px;flex-shrink:0}.seq-icon[data-v-227256ef]{padding:5px}.seq-status[data-v-227256ef]{color:var(--text-secondary)}.seq-status.verified[data-v-227256ef]{color:var(--primary)}.seq-status.deprecated[data-v-227256ef]{text-decoration:line-through}button[data-v-227256ef]:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.seq-import[data-v-735c1aeb]{display:flex;flex-direction:column;gap:16px}.source-path[data-v-735c1aeb]{flex:1;min-width:220px}.candidate-title[data-v-735c1aeb]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--foreground)}input[type=checkbox][data-v-735c1aeb]{accent-color:var(--primary);width:16px;height:16px}.import-item details[data-v-735c1aeb]{font-size:12px;color:var(--text-secondary)}.import-item summary[data-v-735c1aeb]{cursor:pointer}.diff-row[data-v-735c1aeb]{display:flex;flex-direction:column;gap:6px;margin-top:14px}.diff-row pre[data-v-735c1aeb]{font:12px/1.7 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto;padding:8px;background:var(--surface-secondary);border-radius:5px;margin:3px 0}.diff-row span[data-v-735c1aeb]{font-size:12px;color:var(--text-secondary)}.seq-muted{font-size:12px;color:var(--text-secondary);line-height:1.6}.seq-icon,.seq-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:12px;padding:5px;border-radius:var(--radius-pill)}.seq-link{color:var(--primary)}.seq-icon:hover,.seq-link:hover{background:var(--surface-hover);color:var(--primary)}.seq-icon.active,.seq-icon[aria-pressed=true]{color:var(--primary)}.seq-icon:disabled,.seq-link:disabled{opacity:.5;cursor:default}.seq-hint,.seq-empty{font-size:12px;color:var(--text-secondary);line-height:1.8;padding:12px}.seq-menu{position:relative}.seq-menu summary{list-style:none;cursor:pointer}.seq-menu summary::-webkit-details-marker{display:none}.seq-popover{position:absolute;right:0;top:calc(100% + 5px);z-index:30;width:210px;max-height:60vh;overflow:auto;background:var(--surface-elevated);border:1px solid var(--border);padding:5px;border-radius:var(--radius);box-shadow:var(--shadow-lg)}.seq-popover button{display:block;width:100%;text-align:left;border:0;background:none;padding:10px;font-size:12px;color:var(--foreground);border-radius:var(--radius-pill);cursor:pointer}.seq-popover button:hover{background:var(--surface-hover)}.seq-popover button:disabled{opacity:.4;cursor:default}.seq-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:12px;color:var(--text-secondary)}.seq-field input,.seq-field select,.seq-field textarea{border:0;border-radius:var(--radius);background:var(--muted);padding:12px 14px;color:var(--foreground);font-size:13px;min-width:0;width:100%;box-sizing:border-box}.seq-field textarea{resize:vertical;line-height:1.7}.seq-field input:focus,.seq-field textarea:focus,.seq-field select:focus{outline:2px solid var(--primary);outline-offset:1px}.seq-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.seq-form-grid .full{grid-column:1/-1}.seq-banner{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-secondary);padding:12px;font-size:12px;line-height:1.8;color:var(--foreground)}.seq-banner.error{border-color:var(--destructive, var(--primary))}.seq-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;overflow-wrap:anywhere}.seq-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.seq-section{border:1px solid var(--border);border-radius:var(--radius-card);padding:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.seq-section>summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--foreground)}.seq-section>summary+*{margin-top:16px}.seq-section h3{font-size:13px;font-weight:600;margin:0 0 14px;color:var(--foreground)}.seq-section p{font-size:13px;line-height:1.8;color:var(--text-secondary);white-space:pre-wrap}.seq-section button:focus-visible,.sequence-card button:focus-visible,.sequence-list-pane button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:700px){.seq-form-grid{grid-template-columns:1fr}.seq-section{padding:14px}.seq-popover{max-width:calc(100vw - 40px)}}@media(max-width:768px){.seq-icon{min-width:32px;min-height:32px}.seq-actions [data-slot=button]{min-height:36px}}.sequence-list-pane[data-v-0945b39b]{width:340px;min-width:280px;max-width:380px;display:flex;flex-direction:column;height:100%;background:var(--list);border-right:1px solid var(--border);flex-shrink:0}.seq-list-header[data-v-0945b39b]{padding:24px 16px 14px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--border)}.seq-list-heading[data-v-0945b39b]{display:flex;align-items:center;justify-content:space-between;font-size:20px;font-weight:600}.seq-search[data-v-0945b39b]{position:relative;display:flex;align-items:center}.seq-search>svg[data-v-0945b39b]{position:absolute;left:14px;color:var(--muted-foreground);z-index:1;pointer-events:none}.seq-search[data-v-0945b39b] input{padding-left:38px;padding-right:34px}.seq-search .seq-icon[data-v-0945b39b]{position:absolute;right:6px}.seq-view-tabs[data-v-0945b39b]{display:flex;width:100%}.seq-view-tabs[data-v-0945b39b] .segment{flex:1;padding:0 8px}.seq-filters[data-v-0945b39b]{display:flex;gap:8px}.seq-filters[data-v-0945b39b] .app-select-trigger{width:calc(50% - 4px)}.seq-list-scroll[data-v-0945b39b]{overflow:auto;flex:1;min-height:0;padding:6px 8px}.seq-list-footer[data-v-0945b39b]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--border)}.seq-load-more[data-v-0945b39b]{display:block;margin:16px auto;border:0;background:none;color:var(--primary);font-size:12px;cursor:pointer}.seq-drafts[data-v-0945b39b]{border-bottom:1px solid var(--border);padding:8px 4px;margin-bottom:8px}.seq-draft-row[data-v-0945b39b]{display:flex;justify-content:space-between;gap:8px;width:100%;text-align:left;font-size:12px;padding:10px 6px;border:0;background:none;color:var(--foreground);cursor:pointer}.seq-draft-row span[data-v-0945b39b]{color:var(--primary);flex-shrink:0}.seq-draft-row.active[data-v-0945b39b]{background:var(--accent);border-radius:6px}.sequence-viewer[data-v-a9e31970]{width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.viewer-toolbar[data-v-a9e31970]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:8px 16px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-secondary)}.viewer-length[data-v-a9e31970]{margin-left:12px;color:var(--foreground);font-weight:500}.viewer-mods[data-v-a9e31970]{display:flex;justify-content:space-between;gap:16px;padding:12px 16px 0;font-size:12px;color:var(--text-secondary)}.viewer-mods strong[data-v-a9e31970]{font-weight:500;color:var(--foreground);margin-left:4px}.viewer-body[data-v-a9e31970]{padding:18px 16px;display:flex;flex-direction:column;gap:14px;overflow-x:auto}.viewer-row[data-v-a9e31970]{display:grid;grid-template-columns:3ch minmax(0,1fr) 3ch;column-gap:12px;align-items:end;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:32px}.viewer-coordinate[data-v-a9e31970]{font-size:12px;color:var(--text-tertiary);-webkit-user-select:none;user-select:none;text-align:right;line-height:32px}.viewer-coordinate.end[data-v-a9e31970]{text-align:left}.viewer-runs[data-v-a9e31970]{display:flex;min-width:0;align-items:end;gap:0}.viewer-domain[data-v-a9e31970]{display:flex;flex-direction:column;flex:0 0 auto;width:calc(var(--segment-length)*1ch);min-width:0;padding:0;border:0;border-radius:0;background:none;color:var(--foreground);font:inherit;cursor:pointer;text-align:left;-webkit-user-select:text;user-select:text}.viewer-domain-label[data-v-a9e31970]{width:100%;height:23px;line-height:20px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:clip;font:500 12px/20px -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.viewer-bases[data-v-a9e31970]{display:block;width:100%;font:inherit;white-space:pre;letter-spacing:0;border-radius:3px}.viewer-domain.anchor .viewer-bases[data-v-a9e31970]{background:var(--muted)}.viewer-domain.encoding .viewer-bases[data-v-a9e31970]{background:var(--accent);background:color-mix(in srgb,var(--primary) 12%,transparent)}.viewer-domain.binding .viewer-bases[data-v-a9e31970]{background:var(--surface-secondary);background:color-mix(in srgb,var(--green) 12%,transparent)}.viewer-domain.spacer .viewer-bases[data-v-a9e31970]{background:var(--subtle)}.viewer-domain.selected .viewer-bases[data-v-a9e31970]{box-shadow:inset 0 -2px var(--primary)}.viewer-domain[data-v-a9e31970]:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.viewer-plain[data-v-a9e31970]{font:inherit;white-space:pre;letter-spacing:0;-webkit-user-select:text;user-select:text}.viewer-note[data-v-a9e31970]{margin:0;padding:0 16px 14px;font-size:12px;line-height:1.6;color:var(--text-secondary)}.viewer-legend[data-v-a9e31970]{display:flex;flex-wrap:wrap;gap:14px;padding:10px 16px;border-top:1px solid var(--border);font-size:12px;color:var(--text-secondary)}.viewer-legend span[data-v-a9e31970]{display:flex;gap:5px;align-items:center}.viewer-legend i[data-v-a9e31970]{width:9px;height:9px;border-radius:2px;border:1px solid var(--border)}.viewer-legend .anchor[data-v-a9e31970]{background:var(--muted)}.viewer-legend .encoding[data-v-a9e31970]{background:color-mix(in srgb,var(--primary) 20%,var(--surface))}.viewer-legend .binding[data-v-a9e31970]{background:color-mix(in srgb,var(--green) 20%,var(--surface))}.viewer-legend .spacer[data-v-a9e31970]{background:var(--subtle)}@media(max-width:500px){.viewer-body[data-v-a9e31970]{padding:14px 10px}.viewer-row[data-v-a9e31970]{column-gap:6px}.viewer-toolbar[data-v-a9e31970]{padding:8px 12px}.viewer-mods[data-v-a9e31970]{padding:10px 12px 0}}.pool-header[data-v-ad0c1ed3]{display:flex;flex-direction:column;gap:12px;margin:18px 0}.pool-header h4[data-v-ad0c1ed3]{font-size:13px;font-weight:600;margin:0;color:var(--foreground)}.pool-header[data-v-ad0c1ed3] .app-select-trigger{width:auto}.pool-table-wrapper[data-v-ad0c1ed3]{overflow:auto}.pool-table[data-v-ad0c1ed3]{border-collapse:collapse;width:100%;font-size:12px;color:var(--foreground)}.pool-table th[data-v-ad0c1ed3],.pool-table td[data-v-ad0c1ed3]{padding:10px 8px;text-align:left;border-bottom:1px solid var(--border);min-width:40px}.pool-table th[data-v-ad0c1ed3]{color:var(--text-secondary);font-weight:500}.pool-table td.seq-mono[data-v-ad0c1ed3]{min-width:240px;overflow-wrap:anywhere;max-width:400px}.row-active[data-v-ad0c1ed3]{background:var(--accent)}.sequence-inspector[data-v-1d53f120]{display:flex;flex-direction:column;height:100%;min-width:0;background:var(--background);color:var(--foreground)}.seq-detail-header[data-v-1d53f120]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;border-bottom:1px solid var(--border);flex-wrap:wrap}.seq-detail-title[data-v-1d53f120]{min-width:0;display:flex;flex-direction:column;gap:7px}.seq-detail-title h2[data-v-1d53f120]{font-size:20px;font-weight:600;margin:0;overflow-wrap:anywhere;line-height:1.4}.seq-detail-scroll[data-v-1d53f120]{overflow:auto;min-height:0;flex:1;padding:24px 28px;display:flex;flex-direction:column;gap:16px}.seq-detail-scroll[data-v-1d53f120]>*{flex-shrink:0}.seq-primary-content[data-v-1d53f120]{padding:0;min-width:0}.seq-context-section[data-v-1d53f120]{border:0;border-top:1px solid var(--border);border-radius:0;padding:16px 0;background:transparent;box-shadow:none;font-size:13px}.seq-context-section>summary[data-v-1d53f120]{cursor:pointer;font-size:13px;font-weight:600;color:var(--foreground)}.seq-context-section>div[data-v-1d53f120]{margin-top:16px}.seq-context-section p[data-v-1d53f120]{font-size:13px;color:var(--text-secondary);line-height:1.8;white-space:pre-wrap}.seq-section-title>.seq-muted[data-v-1d53f120]{display:none}.seq-section-title[data-v-1d53f120]{justify-content:space-between;margin-bottom:16px}.seq-section-title h3[data-v-1d53f120]{margin:0}.seq-modifications[data-v-1d53f120]{display:flex;gap:20px;font-size:12px;color:var(--primary);margin-bottom:14px;flex-wrap:wrap}.seq-stat-line[data-v-1d53f120]{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;color:var(--text-secondary);padding:12px 0 0}.estimate-note[data-v-1d53f120]{margin-top:8px}.estimate-note summary[data-v-1d53f120]{cursor:pointer}.pool-controls[data-v-1d53f120]{margin-bottom:16px}.pool-controls[data-v-1d53f120] .app-select-trigger{width:auto;max-width:100%;flex:0 1 auto}.seq-special-fields[data-v-1d53f120]{display:grid;grid-template-columns:140px 1fr;gap:12px;margin:16px 0;font-size:13px;line-height:1.6}.seq-special-fields dt[data-v-1d53f120]{color:var(--text-secondary)}.seq-special-fields dd[data-v-1d53f120]{margin:0;overflow-wrap:anywhere}.seq-readout[data-v-1d53f120]{display:flex;justify-content:space-between;gap:12px;padding:12px;margin-bottom:6px;border-radius:6px;border:1px solid var(--border);font-size:13px}.seq-readout.selected[data-v-1d53f120]{border-color:var(--primary);background:var(--accent)}.transform-preview[data-v-1d53f120],.seq-conflict-field pre[data-v-1d53f120]{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;border-radius:6px;background:var(--surface-secondary);font-size:12px;line-height:1.8;color:var(--foreground)}.seq-conflict-field[data-v-1d53f120]{display:flex;flex-direction:column;gap:5px;margin-bottom:18px;font-size:13px}.seq-conflict-field pre[data-v-1d53f120]{margin:0 0 6px;max-height:180px;overflow:auto}@media(max-width:900px){.seq-detail-header[data-v-1d53f120],.seq-detail-scroll[data-v-1d53f120]{padding:16px}.seq-detail-title h2[data-v-1d53f120]{font-size:18px}}@media(max-width:500px){.seq-special-fields[data-v-1d53f120]{grid-template-columns:1fr;gap:6px}.seq-detail-header[data-v-1d53f120]{align-items:flex-start}.seq-readout[data-v-1d53f120]{flex-direction:column}}.planner-home-card[data-v-129e519c]{display:grid;gap:12px;padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm)}.planner-home-card label[data-v-129e519c]{color:var(--foreground);line-height:1.6}.planner-home-card p[data-v-129e519c]{margin:0;color:var(--text-secondary)}.planner-page[data-v-00a8268e]{padding:32px;max-width:1200px;margin:auto;color:var(--foreground)}.planner-header[data-v-00a8268e],.planner-card-head[data-v-00a8268e]{display:flex;align-items:center;justify-content:space-between;gap:15px}.planner-header[data-v-00a8268e]{margin-bottom:24px}.planner-header p[data-v-00a8268e],.planner-muted[data-v-00a8268e],.planner-legend[data-v-00a8268e]{color:var(--text-secondary);font-size:13px}.planner-header h1[data-v-00a8268e]{font-size:25px;font-weight:600;margin:8px 0}.planner-layout[data-v-00a8268e]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.planner-card[data-v-00a8268e]{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);padding:24px;min-width:0}.planner-card h2[data-v-00a8268e]{font-size:18px;font-weight:600;margin:4px 0 16px}.calendar-grid[data-v-00a8268e]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:4px}.weekday[data-v-00a8268e]{color:var(--text-secondary);font-size:12px;margin:12px 0}.calendar-day[data-v-00a8268e]{border:1px solid transparent;background:transparent;border-radius:12px;color:var(--foreground);height:46px;position:relative}.calendar-day span[data-v-00a8268e]{display:grid;place-items:center;width:28px;height:28px;margin:auto;border-radius:50%}.calendar-day.today[data-v-00a8268e]{border-color:var(--primary)}.calendar-day.selected[data-v-00a8268e]{background:var(--accent)}.calendar-day.outside[data-v-00a8268e]{opacity:.35}.calendar-day.done span[data-v-00a8268e]{background:var(--green);color:#fff}.calendar-day.partial span[data-v-00a8268e]{position:relative;z-index:0;background:conic-gradient(var(--primary) var(--progress),var(--border-strong) 0)}.calendar-day.partial span[data-v-00a8268e]:before{content:"";position:absolute;inset:2px;border-radius:50%;background:var(--surface);z-index:-1}.calendar-day.pending span[data-v-00a8268e]{border:1px solid var(--border-strong)}.calendar-day small[data-v-00a8268e]{position:absolute;right:2px;bottom:0}.planner-legend[data-v-00a8268e]{margin:20px 0 0}.planner-task[data-v-00a8268e],.planner-goal-row[data-v-00a8268e],.planner-add[data-v-00a8268e]{display:flex;align-items:center;gap:10px}.planner-task[data-v-00a8268e],.planner-goal[data-v-00a8268e]{padding:10px 0;border-bottom:1px solid var(--border)}.planner-task-title[data-v-00a8268e],.planner-add input[data-v-00a8268e],.planner-note textarea[data-v-00a8268e],.planner-carry input[type=date][data-v-00a8268e]{min-width:0;border:0;background:var(--background);border-radius:10px;color:var(--foreground);padding:9px;font:inherit}.planner-task-title[data-v-00a8268e],.planner-add input[data-v-00a8268e]{flex:1}.planner-task-title.completed[data-v-00a8268e]{text-decoration:line-through;color:var(--text-secondary)}.planner-task select[data-v-00a8268e]{max-width:110px;background:var(--background);color:var(--foreground);border:0;border-radius:8px;font-size:12px}.planner-task button[data-v-00a8268e],.planner-goal button[data-v-00a8268e]{border:0;background:transparent;color:var(--text-secondary);font-size:20px}.planner-add[data-v-00a8268e]{margin-top:16px}.planner-note[data-v-00a8268e],.planner-goal details[data-v-00a8268e]{margin-top:16px;color:var(--text-secondary);font-size:13px}.planner-note textarea[data-v-00a8268e]{display:block;width:100%;margin-top:10px;min-height:80px;resize:vertical}.planner-rest[data-v-00a8268e]{display:inline-flex;gap:6px;align-items:center;color:var(--text-secondary);font-size:13px}.planner-carry[data-v-00a8268e]{display:grid;gap:10px;padding:12px 0}.week-card[data-v-00a8268e]{margin-top:18px}.planner-celebration[data-v-00a8268e]{position:fixed;top:25%;left:50%;transform:translate(-50%);z-index:80;display:grid;gap:10px;text-align:center;padding:24px 35px;background:var(--surface);border-radius:18px;box-shadow:var(--shadow-lg);color:var(--primary)}.planner-celebration span[data-v-00a8268e]{font-size:30px}.planner-sparks[data-v-00a8268e]{position:relative}.planner-sparks i[data-v-00a8268e]{position:absolute;left:50%;top:50%;font-style:normal;font-size:14px;animation:confetti-00a8268e 1.4s ease-out both;transform:rotate(calc(var(--i) * 30deg)) translateY(-12px)}@keyframes confetti-00a8268e{to{opacity:0;transform:rotate(calc(var(--i) * 30deg)) translateY(-100px)}}@keyframes sparkle-00a8268e{to{transform:scale(1.2) rotate(8deg)}}@media(prefers-reduced-motion:reduce){.planner-celebration span[data-v-00a8268e],.planner-celebration i[data-v-00a8268e]{animation:none}}@media(max-width:1200px){.planner-page[data-v-00a8268e]{padding:22px}.planner-layout[data-v-00a8268e]{grid-template-columns:1fr}.planner-task[data-v-00a8268e]{flex-wrap:wrap}}@media(max-width:768px){.planner-page[data-v-00a8268e]{padding:12px 10px calc(76px + env(safe-area-inset-bottom,0px)) 10px}.planner-card[data-v-00a8268e]{padding:16px 12px;border-radius:12px}.calendar-day[data-v-00a8268e]{height:42px}}.celebration[data-v-82da607a]{position:fixed;top:25%;left:50%;transform:translate(-50%);z-index:80;display:grid;gap:10px;text-align:center;padding:24px 35px;background:var(--surface);border-radius:18px;box-shadow:var(--shadow-lg);color:var(--primary)}.sparks[data-v-82da607a]{position:relative;font-size:30px}.sparks i[data-v-82da607a]{position:absolute;left:50%;top:50%;font-style:normal;font-size:14px;animation:confetti-82da607a 1.4s ease-out both;transform:rotate(calc(var(--i)*30deg)) translateY(-12px)}@keyframes confetti-82da607a{to{opacity:0;transform:rotate(calc(var(--i)*30deg)) translateY(-100px)}}@media(prefers-reduced-motion:reduce){.sparks i[data-v-82da607a]{animation:none}}.mobile-nav-bar[data-v-8c196d28]{display:none}@media(max-width:768px){.mobile-nav-bar[data-v-8c196d28]{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:#ffffffe0;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--border);z-index:1000;box-sizing:border-box;align-items:stretch;justify-content:space-around}:root.dark .mobile-nav-bar[data-v-8c196d28]{background:#1c1c1ee0;border-top-color:#ffffff1f}.nav-tab-item[data-v-8c196d28]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;padding:4px 0;color:var(--text-secondary);cursor:pointer;transition:color .15s ease;-webkit-tap-highlight-color:transparent}.nav-tab-item.active[data-v-8c196d28]{color:var(--primary)}.icon-wrap[data-v-8c196d28]{position:relative;display:flex;align-items:center;justify-content:center;width:28px;height:24px}.tab-icon[data-v-8c196d28]{transition:transform .15s ease}.nav-tab-item.active .tab-icon[data-v-8c196d28]{transform:scale(1.08)}.timer-dot[data-v-8c196d28]{position:absolute;top:0;right:0;width:8px;height:8px;border-radius:50%;background:#ff9500;border:1.5px solid var(--surface);animation:pulse-8c196d28 1.6s infinite ease-in-out}@keyframes pulse-8c196d28{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.tab-label[data-v-8c196d28]{font-size:10px;font-weight:500;line-height:1.2;letter-spacing:-.1px}}.mobile-drawer-overlay[data-v-c838c8b0]{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:2000;display:flex;flex-direction:column;justify-content:flex-end;animation:fadeIn-c838c8b0 .2s ease}@keyframes fadeIn-c838c8b0{0%{opacity:0}to{opacity:1}}.mobile-drawer-sheet[data-v-c838c8b0]{background:var(--surface);border-top-left-radius:16px;border-top-right-radius:16px;border-top:1px solid var(--border);box-shadow:0 -8px 32px #0003;max-height:85vh;display:flex;flex-direction:column;animation:slideUp-c838c8b0 .25s cubic-bezier(.16,1,.3,1);padding-bottom:max(16px,env(safe-area-inset-bottom))}@keyframes slideUp-c838c8b0{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-drag-handle[data-v-c838c8b0]{width:36px;height:4px;border-radius:2px;background:var(--border);margin:8px auto 4px;cursor:pointer}.sheet-header[data-v-c838c8b0]{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 12px;border-bottom:1px solid var(--border)}.title-wrap[data-v-c838c8b0]{display:flex;align-items:center;gap:8px;overflow:hidden}.type-icon-pill[data-v-c838c8b0]{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:10px;font-size:11px;font-weight:600;flex-shrink:0}.type-icon-pill.reagent[data-v-c838c8b0]{background:#0071e31f;color:var(--primary)}.type-icon-pill.sequence[data-v-c838c8b0]{background:#9333ea1f;color:#a855f7}.sheet-title[data-v-c838c8b0]{margin:0;font-size:16px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.close-btn[data-v-c838c8b0]{background:none;border:none;padding:6px;color:var(--text-secondary);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center}.sheet-body[data-v-c838c8b0]{padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:16px}.toast-tip[data-v-c838c8b0]{display:flex;align-items:center;gap:6px;background:var(--primary);color:#fff;font-size:12px;padding:6px 12px;border-radius:8px;animation:fadeIn-c838c8b0 .15s ease}.volume-scaler-box[data-v-c838c8b0]{background:var(--surface-secondary, rgba(0, 0, 0, .03));border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}.scaler-header[data-v-c838c8b0]{display:flex;align-items:center;justify-content:space-between}.scaler-label[data-v-c838c8b0]{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--text)}.ref-hint[data-v-c838c8b0]{font-size:12px;color:var(--text-secondary)}.presets-scroll-bar[data-v-c838c8b0]{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.preset-pill[data-v-c838c8b0]{flex-shrink:0;padding:5px 10px;border-radius:16px;border:1px solid var(--border);background:var(--surface);font-size:12px;color:var(--text);cursor:pointer;transition:all .15s ease}.preset-pill.active[data-v-c838c8b0]{background:var(--primary);color:#fff;border-color:var(--primary)}.volume-input[data-v-c838c8b0]{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;outline:none;box-sizing:border-box}.volume-input[data-v-c838c8b0]:focus{border-color:var(--primary)}.components-section[data-v-c838c8b0]{display:flex;flex-direction:column;gap:8px}.section-title[data-v-c838c8b0]{margin:0;font-size:13px;font-weight:600;color:var(--text-secondary)}.comp-cards-list[data-v-c838c8b0]{display:flex;flex-direction:column;gap:6px}.comp-card[data-v-c838c8b0]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.comp-info[data-v-c838c8b0]{display:flex;flex-direction:column;gap:2px}.comp-name[data-v-c838c8b0]{font-size:14px;font-weight:600;color:var(--text)}.comp-conc[data-v-c838c8b0]{font-size:12px;color:var(--text-secondary)}.comp-amount[data-v-c838c8b0]{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.scaled-val[data-v-c838c8b0]{font-size:14px;font-weight:700;color:var(--primary)}.orig-val[data-v-c838c8b0]{font-size:11px;color:var(--text-secondary)}.notes-box[data-v-c838c8b0]{background:var(--surface-secondary, rgba(0, 0, 0, .02));border-left:3px solid var(--primary);border-radius:4px;padding:10px 12px}.notes-title[data-v-c838c8b0]{font-size:12px;font-weight:600;color:var(--text);display:block;margin-bottom:4px}.notes-text[data-v-c838c8b0]{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap}.seq-meta-bar[data-v-c838c8b0]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cat-tag[data-v-c838c8b0],.gene-tag[data-v-c838c8b0],.order-tag[data-v-c838c8b0]{font-size:11px;padding:3px 8px;border-radius:8px;background:var(--surface-secondary, rgba(0, 0, 0, .05));color:var(--text);border:1px solid var(--border)}.seq-props-row[data-v-c838c8b0]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.prop-item[data-v-c838c8b0]{display:flex;flex-direction:column;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px}.prop-item .lbl[data-v-c838c8b0]{font-size:11px;color:var(--text-secondary)}.prop-item .val[data-v-c838c8b0]{font-size:15px;font-weight:700;color:var(--text);margin-top:2px}.seq-box[data-v-c838c8b0]{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.seq-box-top[data-v-c838c8b0]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--surface-secondary, rgba(0, 0, 0, .03));border-bottom:1px solid var(--border)}.seq-lbl[data-v-c838c8b0]{font-size:12px;font-weight:600;color:var(--text)}.seq-code[data-v-c838c8b0]{display:block;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.6;color:var(--text);word-break:break-all;-webkit-user-select:all;user-select:all}.empty-state[data-v-c838c8b0],.loading-state[data-v-c838c8b0]{text-align:center;padding:32px 16px;font-size:14px;color:var(--text-secondary)}.mobile-protocol-lab[data-v-e2e10439]{width:100%;height:100%;flex:1;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.protocol-list-view[data-v-e2e10439]{padding:12px 14px calc(76px + env(safe-area-inset-bottom,0px)) 14px;display:flex;flex-direction:column;gap:12px}.search-section[data-v-e2e10439]{width:100%}.search-input-wrap[data-v-e2e10439]{position:relative;display:flex;align-items:center}.search-icon[data-v-e2e10439]{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.search-input[data-v-e2e10439]{width:100%;height:40px;padding:0 12px 0 36px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--foreground);font-size:15px;outline:none;box-sizing:border-box}.search-input[data-v-e2e10439]:focus{border-color:var(--primary)}.filter-chips-bar[data-v-e2e10439]{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.chip-btn[data-v-e2e10439]{flex-shrink:0;padding:6px 14px;border-radius:16px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.chip-btn.active[data-v-e2e10439]{background:var(--primary);color:#fff;border-color:var(--primary)}.protocol-cards-stream[data-v-e2e10439]{display:flex;flex-direction:column;gap:10px}.protocol-entry-card[data-v-e2e10439]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:transform .1s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent}.protocol-entry-card[data-v-e2e10439]:active{transform:scale(.985);border-color:var(--primary)}.card-top[data-v-e2e10439]{display:flex;align-items:center;justify-content:space-between}.title-row[data-v-e2e10439]{display:flex;align-items:center;gap:8px;min-width:0}.proto-icon[data-v-e2e10439]{color:var(--primary);flex-shrink:0}.proto-title[data-v-e2e10439]{margin:0;font-size:16px;font-weight:600;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arrow-icon[data-v-e2e10439]{color:var(--text-secondary);flex-shrink:0}.proto-summary[data-v-e2e10439]{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta[data-v-e2e10439]{display:flex;align-items:center;gap:8px}.status-pill[data-v-e2e10439]{font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px}.status-pill.ready[data-v-e2e10439]{background:#10b9811f;color:#059669}.status-pill.in_progress[data-v-e2e10439]{background:#f59e0b1f;color:#d97706}.status-pill.draft[data-v-e2e10439]{background:#6b72801f;color:#6b7280}.meta-date[data-v-e2e10439]{font-size:11px;color:var(--text-secondary);margin-left:auto}.empty-list-tip[data-v-e2e10439]{text-align:center;padding:48px 16px;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:8px}.lab-focus-view[data-v-e2e10439]{display:flex;flex-direction:column;min-height:100%;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.focus-header[data-v-e2e10439]{position:sticky;top:0;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:10px 14px 12px;z-index:100;display:flex;flex-direction:column;gap:8px}:root.dark .focus-header[data-v-e2e10439]{background:#1c1c1eeb}.focus-nav-row[data-v-e2e10439]{display:flex;align-items:center;justify-content:space-between}.back-link-btn[data-v-e2e10439]{display:inline-flex;align-items:center;gap:2px;background:none;border:none;color:var(--primary);font-size:14px;font-weight:500;padding:4px 0;cursor:pointer}.reset-btn[data-v-e2e10439]{display:inline-flex;align-items:center;gap:4px;background:none;border:1px solid var(--border);border-radius:12px;padding:3px 8px;font-size:11px;color:var(--text-secondary);cursor:pointer}.focus-title[data-v-e2e10439]{margin:0;font-size:18px;font-weight:700;color:var(--foreground);line-height:1.3}.progress-box[data-v-e2e10439]{display:flex;flex-direction:column;gap:5px}.progress-labels[data-v-e2e10439]{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-secondary)}.progress-labels strong[data-v-e2e10439]{color:var(--primary)}.progress-right[data-v-e2e10439]{display:inline-flex;align-items:center;gap:8px}.reset-btn-inline[data-v-e2e10439]{display:inline-flex;align-items:center;gap:3px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:2px 7px;font-size:11px;color:var(--text-secondary);cursor:pointer}.reset-btn-inline[data-v-e2e10439]:active{background:var(--accent);color:var(--primary)}.progress-pct[data-v-e2e10439]{font-weight:600;color:var(--foreground)}.progress-track[data-v-e2e10439]{width:100%;height:6px;border-radius:999px;background:var(--surface-secondary, rgba(0, 0, 0, .08));overflow:hidden}.progress-fill[data-v-e2e10439]{height:100%;background:var(--primary);border-radius:inherit;transition:width .25s ease}.steps-stream[data-v-e2e10439]{padding:14px;display:flex;flex-direction:column;gap:18px}.stage-group[data-v-e2e10439]{display:flex;flex-direction:column;gap:10px}.stage-header[data-v-e2e10439]{display:flex;align-items:center;gap:8px}.stage-index[data-v-e2e10439]{width:20px;height:20px;border-radius:50%;background:var(--primary);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.stage-title[data-v-e2e10439]{margin:0;font-size:14px;font-weight:600;color:var(--text-secondary)}.step-cards-list[data-v-e2e10439]{display:flex;flex-direction:column;gap:10px}.step-card[data-v-e2e10439]{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 3px #0000000a;transition:all .15s ease}.step-card.is-completed[data-v-e2e10439]{background:var(--surface-secondary, rgba(0, 0, 0, .02));border-color:#10b9814d}.step-card-top[data-v-e2e10439]{display:flex;align-items:center;gap:10px}.step-checkbox[data-v-e2e10439]{width:34px;height:34px;min-width:34px;min-height:34px;border-radius:50%;border:2px solid var(--border);background:var(--surface);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s cubic-bezier(.16,1,.3,1);-webkit-tap-highlight-color:transparent}.step-checkbox[data-v-e2e10439]:active{transform:scale(.9)}.step-checkbox.checked[data-v-e2e10439]{background:#10b981;border-color:#10b981}.step-indicators[data-v-e2e10439]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.step-num-badge[data-v-e2e10439]{font-size:12px;font-weight:600;color:var(--foreground)}.indicator-chip[data-v-e2e10439]{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 7px;border-radius:6px;font-weight:500}.indicator-chip.temp[data-v-e2e10439]{background:#0284c71a;color:#0284c7}.indicator-chip.warning[data-v-e2e10439]{background:#ef44441a;color:#ef4444}.step-desc-text[data-v-e2e10439]{margin:0;font-size:15.5px;line-height:1.6;color:var(--foreground);cursor:pointer;-webkit-user-select:none;user-select:none}.step-card.is-completed .step-desc-text[data-v-e2e10439]{text-decoration:line-through;color:var(--text-secondary)}.step-footer-tools[data-v-e2e10439]{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px dashed var(--border)}.timer-action-wrap[data-v-e2e10439]{display:flex}.step-timer-btn[data-v-e2e10439]{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:17px;background:#0071e314;border:1px solid rgba(0,113,227,.3);color:var(--primary);font-size:13px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.step-timer-active[data-v-e2e10439]{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border-radius:17px;background:#ff9500;color:#fff;font-size:14px;font-weight:700;letter-spacing:.5px}.pulse-clock[data-v-e2e10439]{animation:pulse-e2e10439 1s infinite alternate}@keyframes pulse-e2e10439{0%{opacity:.6}to{opacity:1}}.pause-btn[data-v-e2e10439]{background:#ffffff40;border:none;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer}.step-materials-wrap[data-v-e2e10439]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.step-material-pill[data-v-e2e10439]{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:8px;background:var(--surface-secondary, rgba(0, 0, 0, .05));border:1px solid var(--border);color:var(--foreground);font-size:12px;cursor:pointer;-webkit-tap-highlight-color:transparent}.step-material-pill[data-v-e2e10439]:active{background:#0071e326;border-color:var(--primary)}.amt-badge[data-v-e2e10439]{font-weight:600;color:var(--primary);margin-left:2px}.mobile-solution-lab[data-v-824c931e]{width:100%;height:100%;flex:1;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.solution-list-view[data-v-824c931e]{padding:12px 14px calc(76px + env(safe-area-inset-bottom,0px)) 14px;display:flex;flex-direction:column;gap:12px}.search-section[data-v-824c931e]{width:100%}.search-input-wrap[data-v-824c931e]{position:relative;display:flex;align-items:center}.search-icon[data-v-824c931e]{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.search-input[data-v-824c931e]{width:100%;height:40px;padding:0 12px 0 36px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--foreground);font-size:15px;outline:none;box-sizing:border-box}.search-input[data-v-824c931e]:focus{border-color:var(--primary)}.filter-chips-bar[data-v-824c931e]{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.chip-btn[data-v-824c931e]{flex-shrink:0;padding:6px 14px;border-radius:16px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.chip-btn.active[data-v-824c931e]{background:var(--primary);color:#fff;border-color:var(--primary)}.solution-cards-stream[data-v-824c931e]{display:flex;flex-direction:column;gap:10px}.solution-entry-card[data-v-824c931e]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:transform .1s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent}.solution-entry-card[data-v-824c931e]:active{transform:scale(.985);border-color:var(--primary)}.card-top[data-v-824c931e]{display:flex;align-items:center;justify-content:space-between}.title-row[data-v-824c931e]{display:flex;align-items:center;gap:8px;min-width:0}.kind-icon.recipe[data-v-824c931e]{color:var(--primary);flex-shrink:0}.kind-icon.reagent[data-v-824c931e]{color:#06b6d4;flex-shrink:0}.item-title[data-v-824c931e]{margin:0;font-size:16px;font-weight:600;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arrow-icon[data-v-824c931e]{color:var(--text-secondary);flex-shrink:0}.item-summary[data-v-824c931e]{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta[data-v-824c931e]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.kind-tag[data-v-824c931e]{font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px}.kind-tag.recipe[data-v-824c931e]{background:#0071e31a;color:var(--primary)}.kind-tag.reagent[data-v-824c931e]{background:#06b6d41a;color:#0891b2}.ph-badge[data-v-824c931e],.spec-badge[data-v-824c931e],.storage-badge[data-v-824c931e]{font-size:11px;padding:2px 7px;border-radius:6px;background:var(--surface-secondary, rgba(0, 0, 0, .05));color:var(--text-secondary);display:inline-flex;align-items:center;gap:3px}.meta-date[data-v-824c931e]{font-size:11px;color:var(--text-secondary);margin-left:auto}.empty-list-tip[data-v-824c931e]{text-align:center;padding:48px 16px;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:8px}.solution-detail-view[data-v-824c931e]{display:flex;flex-direction:column;min-height:100%;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.detail-sticky-header[data-v-824c931e]{position:sticky;top:0;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:10px 14px 12px;z-index:100;display:flex;flex-direction:column;gap:8px}:root.dark .detail-sticky-header[data-v-824c931e]{background:#1c1c1eeb}.back-link-btn[data-v-824c931e]{display:inline-flex;align-items:center;gap:2px;background:none;border:none;color:var(--primary);font-size:14px;font-weight:500;padding:4px 0;cursor:pointer}.title-wrap[data-v-824c931e]{display:flex;flex-direction:column;gap:6px}.detail-title[data-v-824c931e]{margin:0;font-size:19px;font-weight:700;color:var(--foreground);line-height:1.3}.tags-row[data-v-824c931e]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.detail-scroll-body[data-v-824c931e]{padding:14px;display:flex;flex-direction:column;gap:16px}.bench-scaler-card[data-v-824c931e]{background:var(--surface);border:1px solid rgba(0,113,227,.25);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 8px #0071e30f}.scaler-top[data-v-824c931e]{display:flex;align-items:center;justify-content:space-between}.scaler-heading[data-v-824c931e]{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:14px}.ref-baseline[data-v-824c931e]{font-size:12px;color:var(--text-secondary)}.presets-scroll-bar[data-v-824c931e]{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.preset-pill[data-v-824c931e]{flex-shrink:0;padding:6px 11px;border-radius:16px;border:1px solid var(--border);background:var(--surface-secondary, rgba(0, 0, 0, .04));font-size:12.5px;font-weight:500;color:var(--foreground);cursor:pointer;transition:all .15s ease;-webkit-tap-highlight-color:transparent}.preset-pill.active[data-v-824c931e]{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}.input-row[data-v-824c931e]{display:flex;align-items:center;gap:10px}.custom-vol-input[data-v-824c931e]{flex:1;height:38px;padding:0 12px;border-radius:10px;border:1px solid var(--border);background:var(--background);color:var(--foreground);font-size:14.5px;outline:none}.custom-vol-input[data-v-824c931e]:focus{border-color:var(--primary)}.scale-ratio-badge[data-v-824c931e]{font-size:12px;font-weight:700;color:var(--primary);background:#0071e31a;padding:4px 8px;border-radius:8px;white-space:nowrap}.components-section[data-v-824c931e]{display:flex;flex-direction:column;gap:10px}.section-head[data-v-824c931e]{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.section-title[data-v-824c931e]{margin:0;font-size:13.5px;font-weight:600}.comp-cards-stream[data-v-824c931e]{display:flex;flex-direction:column;gap:8px}.comp-item-card[data-v-824c931e]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.comp-card-left[data-v-824c931e]{display:flex;flex-direction:column;gap:4px;min-width:0}.comp-name[data-v-824c931e]{font-size:15px;font-weight:600;color:var(--foreground);line-height:1.3}.comp-meta-pills[data-v-824c931e]{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.conc-pill[data-v-824c931e]{font-size:11px;font-weight:600;color:var(--primary);background:#0071e314;padding:1px 6px;border-radius:4px}.spec-pill[data-v-824c931e],.notes-pill[data-v-824c931e]{font-size:11px;color:var(--text-secondary)}.comp-card-right[data-v-824c931e]{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.scaled-amount[data-v-824c931e]{font-size:16px;font-weight:700;color:var(--primary)}.orig-baseline[data-v-824c931e]{font-size:11px;color:var(--text-secondary)}.info-card[data-v-824c931e]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px}.info-card-header[data-v-824c931e]{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--foreground)}.prep-text[data-v-824c931e],.notes-text[data-v-824c931e]{margin:0;font-size:14px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap}.reagent-props-card[data-v-824c931e]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px}.prop-row[data-v-824c931e]{display:flex;font-size:13.5px;gap:6px}.prop-row .lbl[data-v-824c931e]{color:var(--text-secondary);flex-shrink:0}.prop-row .val[data-v-824c931e]{color:var(--foreground);font-weight:500}.mobile-sequence-lab[data-v-6c6293db]{width:100%;height:100%;flex:1;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.sequence-list-view[data-v-6c6293db]{padding:12px 14px calc(76px + env(safe-area-inset-bottom,0px)) 14px;display:flex;flex-direction:column;gap:12px}.search-section[data-v-6c6293db]{width:100%}.search-input-wrap[data-v-6c6293db]{position:relative;display:flex;align-items:center}.search-icon[data-v-6c6293db]{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.search-input[data-v-6c6293db]{width:100%;height:40px;padding:0 12px 0 36px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--foreground);font-size:15px;outline:none;box-sizing:border-box}.search-input[data-v-6c6293db]:focus{border-color:var(--primary)}.filter-chips-bar[data-v-6c6293db]{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.chip-btn[data-v-6c6293db]{flex-shrink:0;padding:6px 14px;border-radius:16px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.chip-btn.active[data-v-6c6293db]{background:var(--primary);color:#fff;border-color:var(--primary)}.sequence-cards-stream[data-v-6c6293db]{display:flex;flex-direction:column;gap:10px}.seq-entry-card[data-v-6c6293db]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:transform .1s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent}.seq-entry-card[data-v-6c6293db]:active{transform:scale(.985);border-color:var(--primary)}.card-top[data-v-6c6293db]{display:flex;align-items:center;justify-content:space-between}.title-row[data-v-6c6293db]{display:flex;align-items:center;gap:8px;min-width:0}.dna-icon[data-v-6c6293db]{color:#8b5cf6;flex-shrink:0}.seq-name[data-v-6c6293db]{margin:0;font-size:16px;font-weight:600;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arrow-icon[data-v-6c6293db]{color:var(--text-secondary);flex-shrink:0}.seq-badge-row[data-v-6c6293db]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cat-pill[data-v-6c6293db]{font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;background:var(--surface-secondary, rgba(0, 0, 0, .05));color:var(--text-secondary)}.cat-pill.primer[data-v-6c6293db]{background:#0284c71a;color:#0284c7}.cat-pill.probe[data-v-6c6293db]{background:#10b9811a;color:#059669}.cat-pill.probe_pool[data-v-6c6293db]{background:#8b5cf61a;color:#7c3aed}.cat-pill.target_barcode[data-v-6c6293db]{background:#0071e31a;color:var(--primary)}.gene-pill[data-v-6c6293db],.len-pill[data-v-6c6293db],.gc-pill[data-v-6c6293db],.tm-pill[data-v-6c6293db],.order-pill[data-v-6c6293db]{font-size:11px;padding:2px 7px;border-radius:6px;background:var(--surface-secondary, rgba(0, 0, 0, .05));color:var(--text-secondary)}.seq-snippet-box[data-v-6c6293db]{background:var(--surface-secondary, rgba(0, 0, 0, .03));border-radius:8px;padding:6px 10px}.seq-snippet-box code[data-v-6c6293db]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:var(--text-secondary);word-break:break-all}.empty-list-tip[data-v-6c6293db]{text-align:center;padding:48px 16px;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:8px}.sequence-detail-view[data-v-6c6293db]{display:flex;flex-direction:column;min-height:100%;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.detail-sticky-header[data-v-6c6293db]{position:sticky;top:0;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:10px 14px 12px;z-index:100;display:flex;flex-direction:column;gap:8px}:root.dark .detail-sticky-header[data-v-6c6293db]{background:#1c1c1eeb}.back-link-btn[data-v-6c6293db]{display:inline-flex;align-items:center;gap:2px;background:none;border:none;color:var(--primary);font-size:14px;font-weight:500;padding:4px 0;cursor:pointer}.title-wrap[data-v-6c6293db]{display:flex;flex-direction:column;gap:6px}.detail-title[data-v-6c6293db]{margin:0;font-size:19px;font-weight:700;color:var(--foreground);line-height:1.3}.tags-row[data-v-6c6293db]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.detail-scroll-body[data-v-6c6293db]{padding:14px;display:flex;flex-direction:column;gap:16px}.toast-tip[data-v-6c6293db]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;background:var(--primary);color:#fff;font-size:12px;animation:fadeIn .15s ease}.metrics-grid[data-v-6c6293db]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.metric-card[data-v-6c6293db]{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.m-lbl[data-v-6c6293db]{font-size:11px;color:var(--text-secondary)}.m-val[data-v-6c6293db]{font-size:17px;font-weight:700;color:var(--foreground)}.m-val small[data-v-6c6293db]{font-size:11px;font-weight:400;color:var(--text-secondary)}.probe-carousel-card[data-v-6c6293db]{background:var(--surface);border:1px solid rgba(139,92,246,.3);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 8px #8b5cf614}.carousel-head[data-v-6c6293db]{display:flex;align-items:center;justify-content:space-between}.carousel-title-row[data-v-6c6293db]{display:flex;align-items:center;gap:6px;color:#7c3aed;font-size:14px}.pool-counter[data-v-6c6293db]{font-size:12px;color:var(--text-secondary);font-weight:400;margin-left:4px}.carousel-controls[data-v-6c6293db]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ctrl-btn[data-v-6c6293db]{height:38px;border-radius:10px;border:1px solid rgba(139,92,246,.3);background:#8b5cf614;color:#7c3aed;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;-webkit-tap-highlight-color:transparent}.ctrl-btn[data-v-6c6293db]:active{background:#8b5cf633}.active-probe-info[data-v-6c6293db]{background:var(--surface-secondary, rgba(0, 0, 0, .03));border-radius:10px;padding:8px 12px}.probe-info-row[data-v-6c6293db]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.p-name[data-v-6c6293db]{font-weight:600;color:var(--foreground)}.p-pos[data-v-6c6293db],.p-tm[data-v-6c6293db]{color:var(--text-secondary)}.seq-display-card[data-v-6c6293db]{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:12px}.seq-card-header[data-v-6c6293db]{display:flex;align-items:center;justify-content:space-between;font-size:13.5px}.copy-btn[data-v-6c6293db]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-secondary, rgba(0, 0, 0, .04));color:var(--primary);font-size:12px;font-weight:500;cursor:pointer}.copy-btn.mini[data-v-6c6293db]{padding:2px 7px;font-size:11px}.chunks-container[data-v-6c6293db]{display:flex;flex-wrap:wrap;gap:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.chunk-item[data-v-6c6293db]{display:flex;flex-direction:column;gap:2px}.chunk-ruler[data-v-6c6293db]{font-size:9px;color:var(--text-secondary);opacity:.7}.chunk-text[data-v-6c6293db]{font-size:13px;font-weight:600;letter-spacing:1px;display:flex}.base-char.base-a[data-v-6c6293db]{color:#2563eb}.dark .base-char.base-a[data-v-6c6293db]{color:#60a5fa}.base-char.base-t[data-v-6c6293db],.base-char.base-u[data-v-6c6293db]{color:#dc2626}.dark .base-char.base-t[data-v-6c6293db],.dark .base-char.base-u[data-v-6c6293db]{color:#f87171}.base-char.base-c[data-v-6c6293db]{color:#059669}.dark .base-char.base-c[data-v-6c6293db]{color:#34d399}.base-char.base-g[data-v-6c6293db]{color:#d97706}.dark .base-char.base-g[data-v-6c6293db]{color:#fbbf24}.revcomp-card[data-v-6c6293db]{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px}.revcomp-head[data-v-6c6293db]{display:flex;align-items:center;justify-content:space-between}.rc-label[data-v-6c6293db]{font-size:12px;color:var(--text-secondary);font-weight:500}.rc-code[data-v-6c6293db]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:var(--text-secondary);word-break:break-all}.notes-card[data-v-6c6293db]{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px;font-size:13px}.notes-text[data-v-6c6293db]{margin:0;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap}.mobile-sync-overlay[data-v-5ea5a466]{position:fixed;inset:0;z-index:9999;background:#00000073;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;padding:0;animation:fadeIn-5ea5a466 .2s ease-out}@media(min-width:640px){.mobile-sync-overlay[data-v-5ea5a466]{align-items:center;padding:16px}}.mobile-sync-card[data-v-5ea5a466]{width:100%;max-width:440px;background:var(--bg-primary, #ffffff);border-top-left-radius:20px;border-top-right-radius:20px;border:1px solid var(--border-subtle, rgba(0, 0, 0, .08));box-shadow:0 -4px 32px #00000026;padding:20px;display:flex;flex-direction:column;gap:16px;max-height:90vh;overflow-y:auto;animation:slideUp-5ea5a466 .25s cubic-bezier(.16,1,.3,1)}.dark{background:#1c1c1e;border-color:#ffffff1f;box-shadow:0 -4px 32px #00000080}@media(min-width:640px){.mobile-sync-card[data-v-5ea5a466]{border-radius:20px;box-shadow:0 12px 48px #0003}}.card-header[data-v-5ea5a466]{display:flex;flex-direction:column;gap:6px}.header-title-row[data-v-5ea5a466]{display:flex;align-items:center;justify-content:space-between}.brand-icon-box[data-v-5ea5a466]{width:32px;height:32px;border-radius:8px;background:#0071e31a;display:flex;align-items:center;justify-content:center}.modal-title[data-v-5ea5a466]{font-size:16px;font-weight:600;color:var(--foreground);margin:0}.modal-desc[data-v-5ea5a466]{font-size:13px;line-height:1.45;color:var(--text-secondary);margin:0}.close-btn[data-v-5ea5a466]{background:transparent;border:none;color:var(--text-secondary);padding:6px;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center}.close-btn[data-v-5ea5a466]:hover{background:#0000000d}.dark{background:#ffffff1a}.auth-form[data-v-5ea5a466]{display:flex;flex-direction:column;gap:14px}.input-group[data-v-5ea5a466]{display:flex;flex-direction:column;gap:6px}.input-label[data-v-5ea5a466]{font-size:12px;font-weight:500;color:var(--text-secondary)}.input-wrapper[data-v-5ea5a466]{position:relative;display:flex;align-items:center}.input-icon[data-v-5ea5a466]{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.card-input[data-v-5ea5a466]{width:100%;height:42px;padding:0 12px 0 38px;font-size:14px;background:var(--surface, #f5f5f7);border:1px solid var(--border-subtle, rgba(0, 0, 0, .1));border-radius:10px;color:var(--foreground);outline:none;transition:all .15s ease}.dark{background:#ffffff0f;border-color:#ffffff1f}.card-input[data-v-5ea5a466]:focus{border-color:var(--primary, #0071e3);box-shadow:0 0 0 3px #0071e326;background:var(--bg-primary, #ffffff)}.dark{background:#2c2c2e}.advanced-group .card-input[data-v-5ea5a466]{padding-left:12px}.server-url-toggle[data-v-5ea5a466]{display:flex;align-items:center}.toggle-text-btn[data-v-5ea5a466]{background:transparent;border:none;display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--primary, #0071e3);cursor:pointer;padding:0}.error-banner[data-v-5ea5a466]{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;background:#ff3b301a;color:#ff3b30;font-size:12.5px}.form-actions[data-v-5ea5a466]{display:flex;flex-direction:column;gap:10px;margin-top:4px}.submit-btn[data-v-5ea5a466]{height:42px;font-size:14px;font-weight:600;border-radius:10px}.secondary-actions[data-v-5ea5a466]{display:flex;justify-content:center}.auth-hint-text[data-v-5ea5a466]{font-size:12px;color:var(--text-secondary);text-align:center}.register-link[data-v-5ea5a466]{background:transparent;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.register-link[data-v-5ea5a466]:hover{color:var(--primary)}.user-status-card[data-v-5ea5a466]{display:flex;flex-direction:column;gap:14px;padding:16px;background:var(--surface, #f5f5f7);border:1px solid var(--border-subtle, rgba(0, 0, 0, .08));border-radius:14px}.dark{background:#ffffff0a;border-color:#ffffff14}.user-avatar-row[data-v-5ea5a466]{display:flex;align-items:center;gap:12px}.avatar-circle[data-v-5ea5a466]{width:40px;height:40px;border-radius:50%;background:#0071e31f;display:flex;align-items:center;justify-content:center}.user-info[data-v-5ea5a466]{flex:1;display:flex;flex-direction:column}.user-name[data-v-5ea5a466]{font-size:15px;font-weight:600;color:var(--foreground)}.user-sub[data-v-5ea5a466]{font-size:11.5px;color:var(--text-secondary)}.connected-badge[data-v-5ea5a466]{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;padding:3px 8px;border-radius:999px;background:#34c7591f;color:#34c759}.dot-green[data-v-5ea5a466]{width:6px;height:6px;border-radius:50%;background-color:#34c759;box-shadow:0 0 6px #34c75999}.sync-stats-box[data-v-5ea5a466]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);padding:8px 10px;background:var(--bg-primary, #ffffff);border-radius:8px;border:1px solid var(--border-subtle, rgba(0, 0, 0, .05))}.dark{background:#0003}.user-actions[data-v-5ea5a466]{display:flex;align-items:center;gap:10px}.logout-link[data-v-5ea5a466]{color:#ff3b30;font-size:12px}.card-footer[data-v-5ea5a466]{display:flex;justify-content:center;padding-top:4px}.dismiss-link[data-v-5ea5a466]{background:transparent;border:none;font-size:12px;color:var(--text-secondary);cursor:pointer}.dismiss-link[data-v-5ea5a466]:hover{color:var(--foreground)}@keyframes fadeIn-5ea5a466{0%{opacity:0}to{opacity:1}}@keyframes slideUp-5ea5a466{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-emerald-500:oklch(69.6% .17 162.48);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-relaxed:1.625;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.inset-0{inset:0}.top-1\/2{top:50%}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-50{z-index:50}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.max-h-\[86vh\]{max-height:86vh}.min-h-0{min-height:0}.min-h-24{min-height:calc(var(--spacing) * 24)}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-black\/\[0\.08\]{border-color:#00000014}@supports (color:color-mix(in lab,red,red)){.border-black\/\[0\.08\]{border-color:color-mix(in oklab,var(--color-black) 8%,transparent)}}.bg-\[\#0071e3\]{background-color:#0071e3}.bg-\[\#d70015\]{background-color:#d70015}.bg-\[\#e8f2ff\]{background-color:#e8f2ff}.bg-\[\#e8f8ee\]{background-color:#e8f8ee}.bg-\[\#f5f5f7\]{background-color:#f5f5f7}.bg-black{background-color:var(--color-black)}.bg-black\/30{background-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.bg-black\/30{background-color:color-mix(in oklab,var(--color-black) 30%,transparent)}}.bg-white{background-color:var(--color-white)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:var(--spacing)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.whitespace-nowrap{white-space:nowrap}.text-\[\#1d1d1f\]{color:#1d1d1f}.text-\[\#6e6e73\]{color:#6e6e73}.text-\[\#0066cc\]{color:#06c}.text-\[\#0071e3\]{color:#0071e3}.text-\[\#248a3d\]{color:#248a3d}.text-emerald-500{color:var(--color-emerald-500)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-primary{color:var(--primary)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.shadow-\[0_2px_8px_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow:0 2px 8px var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_8px_24px_rgba\(0\,0\,0\,0\.12\)\]{--tw-shadow:0 8px 24px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-\[cubic-bezier\(0\.25\,0\.1\,0\.25\,1\)\]{--tw-ease:cubic-bezier(.25,.1,.25,1);transition-timing-function:ease}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-\[\#86868b\]::placeholder{color:#86868b}@media(hover:hover){.hover\:bg-\[\#1d1d1f\]:hover{background-color:#1d1d1f}.hover\:bg-\[\#0077ed\]:hover{background-color:#0077ed}.hover\:bg-\[\#bd0012\]:hover{background-color:#bd0012}.hover\:bg-\[\#f5f5f7\]:hover{background-color:#f5f5f7}.hover\:text-\[\#1d1d1f\]:hover{color:#1d1d1f}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[\#0071e3\]\/30:focus-visible{--tw-ring-color:oklab(56.2923% -.0462607 -.187713/.3)}.focus-visible\:ring-\[\#0071e3\]\/35:focus-visible{--tw-ring-color:oklab(56.2923% -.0462607 -.187713/.35)}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[0\.98\]:active{scale:.98}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.has-\[\>svg\]\:px-6:has(>svg){padding-inline:calc(var(--spacing) * 6)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}@media(min-width:40rem){.sm\:mt-0{margin-top:0}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}.dark\:border-white\/\[0\.12\]:is(.dark *){border-color:#ffffff1f}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/\[0\.12\]:is(.dark *){border-color:color-mix(in oklab,var(--color-white) 12%,transparent)}}.dark\:bg-\[\#0a2540\]:is(.dark *){background-color:#0a2540}.dark\:bg-\[\#1d1d1f\]:is(.dark *){background-color:#1d1d1f}.dark\:bg-\[\#2c2c2e\]:is(.dark *){background-color:#2c2c2e}.dark\:bg-\[\#10301c\]:is(.dark *){background-color:#10301c}.dark\:bg-\[\#ff453a\]:is(.dark *){background-color:#ff453a}.dark\:bg-white:is(.dark *){background-color:var(--color-white)}.dark\:text-\[\#30d158\]:is(.dark *){color:#30d158}.dark\:text-\[\#64b5ff\]:is(.dark *){color:#64b5ff}.dark\:text-\[\#2997ff\]:is(.dark *){color:#2997ff}.dark\:text-\[\#a1a1a6\]:is(.dark *){color:#a1a1a6}.dark\:text-\[\#f5f5f7\]:is(.dark *){color:#f5f5f7}.dark\:text-black:is(.dark *){color:var(--color-black)}.dark\:text-white:is(.dark *){color:var(--color-white)}.dark\:shadow-\[0_8px_24px_rgba\(0\,0\,0\,0\.55\)\]:is(.dark *){--tw-shadow:0 8px 24px var(--tw-shadow-color,#0000008c);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.dark\:placeholder\:text-\[\#8e8e93\]:is(.dark *)::placeholder{color:#8e8e93}@media(hover:hover){.dark\:hover\:bg-\[\#2c2c2e\]:is(.dark *):hover{background-color:#2c2c2e}.dark\:hover\:bg-\[\#f5f5f7\]:is(.dark *):hover{background-color:#f5f5f7}.dark\:hover\:bg-\[\#ff5f55\]:is(.dark *):hover{background-color:#ff5f55}.dark\:hover\:text-\[\#f5f5f7\]:is(.dark *):hover{color:#f5f5f7}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--background:#f5f5f7;--surface:#fff;--surface-elevated:#fff;--foreground:#1d1d1f;--text-secondary:#6e6e73;--muted-foreground:#6e6e73;--border:#00000014;--border-strong:#00000024;--input:#e8e8ed;--primary:#0071e3;--primary-foreground:#fff;--primary-hover:#0077ed;--accent:#0071e314;--accent-foreground:#06c;--secondary:#f5f5f7;--secondary-foreground:#1d1d1f;--muted:#f5f5f7;--subtle:#fafafa;--destructive:#d70015;--destructive-foreground:#fff;--green:#34c759;--green-text:#248a3d;--red:#ff3b30;--red-text:#d70015;--ring:#0071e3;--sidebar:#f5f5f7;--list:#fff;--surface-secondary:#f5f5f7;--surface-sidebar:#fff;--surface-hover:#0000000a;--text:#1d1d1f;--text-tertiary:#86868b;--radius:.75rem;--radius-card:1rem;--radius-pill:999px;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--focus-ring:0 0 0 4px #0071e34d;--ease-apple:cubic-bezier(.25, .1, .25, 1);color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.dark{--background:#000;--surface:#1d1d1f;--surface-elevated:#2c2c2e;--foreground:#f5f5f7;--text-secondary:#a1a1a6;--muted-foreground:#98989d;--border:#ffffff1f;--border-strong:#fff3;--input:#3a3a3c;--primary:#0071e3;--primary-foreground:#fff;--primary-hover:#0077ed;--accent:#2997ff29;--accent-foreground:#64b5ff;--secondary:#2c2c2e;--secondary-foreground:#f5f5f7;--muted:#2c2c2e;--subtle:#1c1c1e;--destructive:#ff453a;--destructive-foreground:#fff;--green:#30d158;--green-text:#30d158;--red:#ff453a;--red-text:#ff6961;--ring:#2997ff;--sidebar:#1c1c1e;--list:#1d1d1f;--surface-secondary:#2c2c2e;--surface-sidebar:#1d1d1f;--surface-hover:#ffffff0f;--text:#f5f5f7;--text-tertiary:#86868b;--shadow-sm:0 2px 8px #00000059;--shadow-md:0 4px 12px #00000073;--shadow-lg:0 8px 24px #0000008c;--focus-ring:0 0 0 4px #2997ff59;color-scheme:dark}*{box-sizing:border-box;border-color:var(--border)}html,body,#app{height:100%}body{background:var(--background);color:var(--foreground);margin:0;font-size:15px;line-height:1.6}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--ring);outline-offset:3px}input:focus-visible,textarea:focus-visible{outline:none}::selection{color:inherit;background:#0071e333}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#00000029 padding-box content-box;border:2px solid #0000;border-radius:9px}.dark ::-webkit-scrollbar-thumb{background:#ffffff2e padding-box content-box;border:2px solid #0000}.research-app{background:var(--background);min-width:1000px;height:100dvh;min-height:600px;display:flex;overflow:hidden}.muted{color:var(--muted-foreground)}.app-sidebar{background:var(--sidebar);border-right:1px solid var(--border);flex-direction:column;flex:0 0 248px;width:248px;min-height:0;padding:28px 16px 20px;display:flex}.brand{align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{color:#fff;background:#1d1d1f;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:22px;font-weight:600;display:grid;position:relative}.brand-mark span{background:var(--primary);border:2px solid var(--sidebar);border-radius:50%;width:11px;height:11px;font-size:0;position:absolute;top:-3px;right:-3px}.dark .brand-mark{color:#1d1d1f;background:#f5f5f7}.brand strong{letter-spacing:-.02em;font-size:17px;font-weight:600;line-height:1.2;display:block}.brand-subtitle{color:var(--muted-foreground);margin-top:3px;font-size:12px;display:block}.section-label{color:var(--muted-foreground);justify-content:space-between;align-items:center;margin:0 0 8px;padding:0 12px;font-size:12px;font-weight:500;display:flex}.section-label span{color:var(--muted-foreground);font-size:12px}.modules-label{margin-top:24px}.nav-item{color:var(--text-secondary);text-align:left;width:100%;transition:background-color .3s var(--ease-apple),color .3s var(--ease-apple),box-shadow .3s var(--ease-apple),transform .3s var(--ease-apple);background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;margin:2px 0;padding:10px 12px;font-size:14px;line-height:1.35;display:flex}.nav-item svg{color:var(--muted-foreground);transition:color .3s var(--ease-apple);flex-shrink:0}.nav-item>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nav-item:hover{color:var(--foreground);background:#0000000a}.nav-item:active{transform:scale(.99)}.nav-item.selected{background:var(--surface);color:var(--foreground);box-shadow:var(--shadow-sm);font-weight:500}.dark .nav-item.selected{background:#2c2c2e}.nav-item.selected svg{color:var(--primary)}.dark .nav-item:hover{background:#ffffff0f}.nav-item small{color:var(--muted-foreground);background:#0000000d;border-radius:999px;margin-left:auto;padding:1px 7px;font-size:12px;font-weight:400}.dark .nav-item small{background:#ffffff14}.nav-item.selected small{background:var(--background)}.module-dot{background:var(--muted-foreground);opacity:.45;border-radius:50%;width:6px;height:6px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:24px}.local-status{width:100%;color:var(--text-secondary);text-align:left;transition:background-color .3s var(--ease-apple),color .3s var(--ease-apple);background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex}.local-status svg{color:var(--muted-foreground);flex-shrink:0}.local-status small{color:var(--muted-foreground);margin-top:1px;font-size:12px;display:block}.local-status:hover{color:var(--foreground);background:#0000000a}.dark .local-status:hover{background:#ffffff0f}.sidebar-tools{justify-content:space-between;align-items:center;padding:12px 4px 0;display:flex}.version{color:var(--muted-foreground);font-size:12px}.version small{color:var(--muted-foreground);opacity:.8;margin-left:6px;font-size:12px}.main-workspace{background:var(--background);flex-direction:column;flex:1;min-width:0;display:flex}.tab-bar{background:var(--sidebar);border-bottom:1px solid var(--border);scrollbar-width:none;flex-shrink:0;align-items:center;gap:4px;height:56px;padding:0 16px;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.workspace-tab{height:36px;color:var(--text-secondary);transition:background-color .3s var(--ease-apple),color .3s var(--ease-apple),box-shadow .3s var(--ease-apple);border-radius:12px;flex-shrink:0;align-items:center;padding-right:2px;display:flex}.workspace-tab:hover{background:#0000000a}.dark .workspace-tab:hover{background:#ffffff0f}.workspace-tab.active{background:var(--surface);color:var(--foreground);box-shadow:var(--shadow-sm)}.dark .workspace-tab.active{background:#2c2c2e}.tab-select{text-align:left;min-width:0;max-width:220px;height:36px;color:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0 10px 0 12px;font-size:13px;display:flex}.tab-select>svg{color:var(--muted-foreground);flex-shrink:0}.workspace-tab.active .tab-select>svg{color:var(--primary)}.tab-select>span:first-of-type{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tab-close{color:var(--muted-foreground);opacity:0;width:24px;height:24px;transition:opacity .2s var(--ease-apple),background-color .2s var(--ease-apple),color .2s var(--ease-apple);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.workspace-tab:hover .tab-close,.workspace-tab:focus-within .tab-close,.workspace-tab.active .tab-close{opacity:1}.tab-close:hover{color:var(--foreground);background:#0000000f}.dark .tab-close:hover{background:#ffffff1a}.workspace-body{flex:1;min-height:0;display:flex}.dirty-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.note-list-pane{border-right:1px solid var(--border);background:var(--list);flex-direction:column;flex:0 0 312px;width:312px;min-height:0;display:flex}.list-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:24px 20px 16px;display:flex}.list-header h2{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:600}.list-header h2 span{color:var(--muted-foreground);margin-left:8px;font-size:12px;font-weight:400}.list-header p{color:var(--muted-foreground);margin:6px 0 0;font-size:13px}.list-controls{flex-direction:column;gap:10px;padding:0 16px;display:flex}.search-field{position:relative}.search-field>svg{color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-field input{height:40px;padding-left:40px;font-size:14px}.new-note-button{width:100%;height:40px;color:var(--text-secondary);justify-content:flex-start;gap:8px;margin-top:2px;font-size:13px;font-weight:500}.new-note-button:hover{color:var(--foreground)}.new-note-button span{color:var(--muted-foreground);margin-left:auto;font-size:12px}.list-section-title{color:var(--muted-foreground);justify-content:space-between;margin:24px 20px 8px;font-size:12px;display:flex}.note-list{flex:1;min-height:0;padding:0 12px 16px;overflow-y:auto}.note-row{text-align:left;width:100%;color:var(--foreground);transition:background-color .25s var(--ease-apple),transform .25s var(--ease-apple);background:0 0;border:0;border-radius:12px;margin-bottom:2px;padding:14px 12px}.note-row:hover{background:var(--background)}.note-row:active{transform:scale(.995)}.note-row.active{background:var(--background)}.note-row-title{align-items:center;gap:8px;display:flex}.note-row-title svg{color:var(--muted-foreground);flex-shrink:0}.note-row.active .note-row-title svg{color:var(--primary)}.note-row-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.note-row p{color:var(--text-secondary);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:6px 0 8px;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.note-row small{color:var(--muted-foreground);font-size:12px}.note-row small span{opacity:.6;margin:0 5px}.list-empty{text-align:center;color:var(--muted-foreground);margin:48px 12px 0}.list-empty>svg{opacity:.55;margin:0 auto 16px}.list-empty strong{color:var(--foreground);font-size:14px;font-weight:600;display:block}.list-empty p{margin:6px 0 0;font-size:13px}.detail-pane{background:var(--background);flex:1;min-width:0;overflow:auto}.page-breadcrumb{min-height:64px;color:var(--text-secondary);justify-content:space-between;align-items:center;padding:0 32px;font-size:13px;display:flex}.page-breadcrumb>span>span{color:var(--muted-foreground);opacity:.6;margin:0 8px}.outline-badge{border:1px solid var(--border);color:var(--text-secondary);background:var(--surface);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.status-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.status-dot.preview{background:var(--muted-foreground)}.home-view{min-height:100%}.home-content{max-width:980px;margin:0 auto;padding:56px 32px 48px}.home-hero{text-align:center;padding:40px 0 64px}.home-kicker{color:var(--text-secondary);margin:0 0 16px;font-size:13px}.home-content h1{letter-spacing:-.03em;max-width:800px;margin:0 auto 20px;font-size:clamp(36px,4vw,52px);font-weight:600;line-height:1.12}.home-content h1>span{color:var(--primary)}.home-intro{color:var(--text-secondary);max-width:620px;margin:0 auto;font-size:16px;line-height:1.85}.home-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.home-summary{color:var(--muted-foreground);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:20px;font-size:12px;display:flex}.home-summary span+span:before{content:"·";color:var(--border-strong);margin-right:8px}.home-section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin:24px 0 20px;display:flex}.home-section-heading h2{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:600}.home-section-heading p{color:var(--text-secondary);margin:6px 0 0;font-size:14px}.phase-badge{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.module-card{text-align:left;background:var(--surface);color:var(--foreground);box-shadow:var(--shadow-sm);transition:box-shadow .3s var(--ease-apple),transform .3s var(--ease-apple);border:0;border-radius:16px;flex-direction:column;min-height:204px;padding:28px;display:flex}.module-card:hover{box-shadow:var(--shadow-md)}.module-card:active{transform:scale(.995)}.module-card-top{color:var(--muted-foreground);justify-content:space-between;align-items:flex-start;display:flex}.module-icon{background:var(--background);width:48px;height:48px;color:var(--text-secondary);transition:transform .3s var(--ease-apple),color .3s var(--ease-apple),background-color .3s var(--ease-apple);border-radius:14px;place-items:center;display:grid}.module-card:hover .module-icon{transform:scale(1.05)}.module-card.ready .module-icon{color:var(--primary);background:var(--accent)}.module-card h3{letter-spacing:-.02em;margin:22px 0 6px;font-size:20px;font-weight:600}.module-card>p{color:var(--text-secondary);margin:0 0 20px;font-size:14px;line-height:1.6}.module-card-bottom{border-top:1px solid var(--border);color:var(--muted-foreground);justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;font-size:12px;display:flex}.module-card.ready .module-card-bottom .module-state{color:var(--primary);font-weight:500}.home-bottom{border-top:1px solid var(--border);color:var(--text-secondary);align-items:center;gap:12px;margin-top:40px;padding-top:24px;display:flex}.home-bottom>svg{color:var(--muted-foreground);flex-shrink:0}.home-bottom p{margin:0;font-size:13px;line-height:1.7}.home-bottom strong{color:var(--foreground);font-weight:500;display:block}.app-statusbar{border-top:1px solid var(--border);height:36px;color:var(--muted-foreground);background:var(--sidebar);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:0 16px;font-size:12px;display:flex}.app-statusbar>span{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.app-statusbar button{color:inherit;transition:background-color .2s var(--ease-apple),color .2s var(--ease-apple);background:0 0;border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.app-statusbar button:hover{background:var(--surface);color:var(--foreground)}.status-divider{color:var(--border-strong);margin:0 2px}.preview-banner,.error-banner{border-bottom:1px solid var(--border);background:var(--surface);color:var(--text-secondary);align-items:center;gap:10px;padding:10px 24px;font-size:13px;line-height:1.5;display:flex}.preview-banner{color:var(--accent-foreground)}.error-banner{color:var(--red-text);background:#fff2f1}.dark .error-banner{color:#ff6961;background:#2a1517}.error-banner>svg,.preview-banner>svg{flex-shrink:0}.error-banner button{margin-left:auto}.note-editor{flex-direction:column;height:100%;min-height:0;display:flex}.editor-toolbar{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:0 24px;display:flex}.editor-toolbar>span,.editor-toolbar>div{color:var(--text-secondary);align-items:center;gap:10px;font-size:13px;display:flex}.breadcrumb-divider{color:var(--muted-foreground);opacity:.5;margin:0 2px}.save-state{color:var(--muted-foreground);align-items:center;gap:6px;font-size:12px;display:inline-flex}.editor-toolbar button{font-size:13px}.editor-scroll{flex:1;min-height:0;padding:32px 24px 64px;overflow-y:auto}.editor-paper{background:var(--surface);width:100%;max-width:760px;box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;min-height:calc(100% - 8px);margin:0 auto;padding:48px 56px 32px;display:flex}.note-title-input{letter-spacing:-.03em;box-shadow:none;border:none;border-radius:6px;height:56px;margin:12px 0 0;padding:0;font-size:36px;font-weight:600;background:0 0!important}.note-title-input:focus-visible{box-shadow:none;outline:none}.note-metadata{color:var(--muted-foreground);align-items:center;gap:8px;margin:4px 0 28px;font-size:12px;display:flex}.paper-divider{border-top:1px solid var(--border);margin-bottom:24px}.note-content-input{resize:none;field-sizing:fixed;min-height:360px;box-shadow:none;border:none;border-radius:0;flex:1;padding:0;font-size:16px;line-height:1.9;background:0 0!important}.note-content-input:focus-visible{box-shadow:none;outline:none}.editor-footer{color:var(--muted-foreground);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;font-size:12px;display:flex}.editor-footer i{opacity:.5;margin:0 8px;font-style:normal}.module-placeholder,.home-view{min-height:100%}.placeholder-content,.notes-welcome{text-align:center;max-width:620px;margin:0 auto;padding:112px 32px 64px}.placeholder-art{background:var(--surface);width:88px;height:88px;color:var(--text-secondary);box-shadow:var(--shadow-sm);border-radius:24px;place-items:center;margin:0 auto 28px;display:grid}.placeholder-art span{display:none}.placeholder-content h1,.notes-welcome h1{letter-spacing:-.02em;margin:0 0 14px;font-size:32px;font-weight:600;line-height:1.3}.placeholder-content>p,.notes-welcome>p{color:var(--text-secondary);max-width:480px;margin:0 auto;font-size:15px;line-height:1.8}.placeholder-content>p.home-kicker{margin:0 auto 12px;font-size:13px}.placeholder-notice{background:var(--surface);color:var(--text-secondary);text-align:left;box-shadow:var(--shadow-sm);border:0;border-radius:16px;align-items:center;gap:12px;margin:28px 0;padding:20px;font-size:13px;display:flex}.notes-welcome{padding-top:140px}.notes-welcome button{margin-top:24px}.dialog-error{color:var(--red-text);font-size:13px}.info-details{font-size:14px;line-height:1.8}.info-details strong{font-weight:600}.info-details p{color:var(--text-secondary);overflow-wrap:anywhere;margin:6px 0 20px;font-size:13px}.info-details .database-path{background:var(--background);border-radius:10px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.spinning{animation:1.5s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-panel-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}[data-slot=alert-dialog-overlay]{animation:dialog-fade-in .2s var(--ease-apple)}[data-slot=alert-dialog-content]{animation:dialog-panel-in .24s var(--ease-apple)}.focus-mode .app-sidebar,.focus-mode .note-list-pane,.focus-mode .protocol-list-pane,.focus-mode .app-statusbar{display:none!important}@media(max-width:1200px){.app-sidebar{flex-basis:224px;width:224px;padding-left:12px;padding-right:12px}.note-list-pane{flex-basis:288px;width:288px}.editor-paper{padding:40px 40px 28px}.home-content{padding:48px 24px 40px}.module-card{padding:24px}}@media(max-width:1060px){.app-sidebar{flex-basis:208px;width:208px}.note-list-pane{flex-basis:272px;width:272px}.editor-paper{padding:32px 32px 24px}.home-content{padding:40px 20px 32px}.module-grid{gap:12px}.module-card{min-height:190px;padding:22px}.page-breadcrumb{padding:0 20px}.editor-toolbar{padding:0 16px}.editor-scroll{padding:24px 16px 48px}.app-statusbar{padding:0 12px}}@media(prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media print{@page{size:A4;margin:16mm 14mm}:root,html,body{color-scheme:light!important;background:#fff!important;height:auto!important;overflow:visible!important}html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact}body.protocol-print-ready #app{display:none!important}body.protocol-print-ready .protocol-print-root{display:block!important}}@media(max-width:768px){html,body,#app,.research-app{touch-action:manipulation;height:100%;overflow:hidden}.research-app{min-width:0;min-height:0;padding-bottom:max(54px,env(safe-area-inset-bottom));flex-direction:column}.app-sidebar,.app-statusbar,.preview-banner{display:none!important}.main-workspace{flex-direction:column;display:flex;overflow:hidden;width:100%!important;height:100%!important}.mobile-top-bar{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:50;background:#ffffffe6;flex-shrink:0;align-items:center;gap:8px;height:46px;padding:0 14px;display:flex}.dark .mobile-top-bar{background:#1c1c1ee6}.mobile-back-btn{color:var(--primary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:2px;margin-left:-4px;padding:4px 6px 4px 0;font-size:14px;font-weight:500;display:inline-flex}.mobile-back-btn:active{opacity:.7}.mobile-title{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:15px;font-weight:700;overflow:hidden}.mobile-title.has-back{font-size:14px;font-weight:600}.mobile-header-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.mobile-sync-icon-btn{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.mobile-sync-icon-btn:active{background:#0000000f}.dark .mobile-sync-icon-btn:active{background:#ffffff1a}.mobile-sync-icon-btn.active{color:var(--primary)}.sync-dot-badge{background-color:#34c759;border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:5px;box-shadow:0 0 4px #34c759cc}.workspace-body{flex-direction:column;flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.mobile-protocol-lab,.mobile-solution-lab,.mobile-sequence-lab{-webkit-overflow-scrolling:touch!important;flex:1!important;width:100%!important;height:100%!important;overflow-y:auto!important}.protocol-list-pane,.reagent-list-pane,.sequence-list-pane,.note-list-pane{border-right:none!important;flex:1!important;width:100%!important;min-width:100%!important;max-width:100%!important;height:100%!important}.detail-pane{overflow-y:auto;flex:1!important;width:100%!important;height:100%!important}input,select,textarea{font-size:16px!important}.list-scroll-area,.inspector-scroll-body,.editor-scroll,.protocol-list-scroll,.reagent-list-scroll,.sequence-list-scroll,.seq-list-scroll,.seq-detail-scroll,.page-content-scroll,.solution-scroll{-webkit-overflow-scrolling:touch;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
