.sidebar[data-v-7ed0dbe9]{border-right:1px solid var(--glass-border);box-shadow:none;padding:var(--space-6) 0;align-items:center;gap:var(--space-2);height:100vh;width:var(--sidebar-width);border-top:none;border-bottom:none;border-left:none;border-radius:0;flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar-logo[data-v-7ed0dbe9]{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--fh-amber) 0%, var(--fh-amber-bright) 100%);width:44px;height:44px;font-family:var(--font-mono);color:var(--fh-petrol-deep);margin-bottom:var(--space-4);letter-spacing:-.02em;justify-content:center;align-items:center;font-size:18px;font-weight:700;text-decoration:none;display:flex}.nav[data-v-7ed0dbe9]{gap:var(--space-2);flex-direction:column;display:flex}.nav-item[data-v-7ed0dbe9]{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);border:1px solid #0000;justify-content:center;align-items:center;text-decoration:none;display:flex}.nav-item[data-v-7ed0dbe9]:hover{background:var(--glass-bg-hover);color:var(--text-primary);border-color:var(--glass-border)}.nav-item.active[data-v-7ed0dbe9]{background:var(--glass-bg-hover);color:var(--fh-amber-bright);border-color:var(--glass-border-strong)}.nav-item svg[data-v-7ed0dbe9]{width:20px;height:20px}.spacer[data-v-7ed0dbe9]{flex:1}.atmosphere[data-v-0bad41fb]{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.blob[data-v-0bad41fb]{filter:blur(100px);border-radius:50%;position:absolute}.blob-amber-top[data-v-0bad41fb]{background:radial-gradient(circle, var(--fh-amber) 0%, transparent 70%);opacity:.35;filter:blur(120px);width:600px;height:600px;top:-200px;left:-100px}.blob-petrol-bottom[data-v-0bad41fb]{background:radial-gradient(circle, var(--fh-petrol-mid) 0%, transparent 70%);opacity:.7;filter:blur(120px);width:800px;height:800px;bottom:-300px;right:-200px}.blob-amber-mid[data-v-0bad41fb]{background:var(--fh-amber);opacity:.12;width:400px;height:400px;top:40%;right:20%}.blob-petrol-left[data-v-0bad41fb]{background:var(--fh-petrol-mid);opacity:.25;width:500px;height:500px;bottom:10%;left:30%}.app-shell[data-v-209c3716]{z-index:1;min-height:100vh;display:flex;position:relative}.main[data-v-209c3716]{padding:var(--space-8) var(--space-10) 48px;flex:1;min-width:0;max-width:100%}.ace-loading[data-v-bb586bd1]{min-height:100vh;color:var(--color-text,#888);justify-content:center;align-items:center;font-size:1.1rem;display:flex}.topbar[data-v-1059fcbb]{margin-bottom:var(--space-8);justify-content:space-between;align-items:center;display:flex}.breadcrumb[data-v-1059fcbb]{align-items:baseline;gap:var(--space-3);display:flex}.breadcrumb-title[data-v-1059fcbb]{letter-spacing:-.03em;font-size:26px;font-weight:600}.breadcrumb-meta[data-v-1059fcbb]{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;font-size:12px}.topbar-actions[data-v-1059fcbb]{gap:var(--space-3);align-items:center;display:flex}.user-pill[data-v-1059fcbb]{border-radius:var(--radius-pill);align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex}.user-avatar[data-v-1059fcbb]{background:linear-gradient(135deg, var(--fh-amber) 0%, var(--fh-amber-bright) 100%);width:28px;height:28px;color:var(--fh-petrol-deep);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.user-pill span[data-v-1059fcbb]{font-size:13px;font-weight:500}.status-dot[data-v-c633e9cc]{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.status-dot.ok[data-v-c633e9cc]{background:var(--color-success);box-shadow:0 0 12px #4ade8099}.status-dot.warn[data-v-c633e9cc]{background:var(--color-warning);box-shadow:0 0 12px #fbbf2499}.status-dot.err[data-v-c633e9cc]{background:var(--color-danger);box-shadow:0 0 12px #f8717199}.status-dot.unknown[data-v-c633e9cc]{background:var(--text-tertiary)}.status-dot.pulse[data-v-c633e9cc]{animation:2s ease-in-out infinite pulse-c633e9cc}@keyframes pulse-c633e9cc{0%,to{opacity:1}50%{opacity:.4}}.brique[data-v-427c31ba]{border-radius:var(--radius-lg);cursor:pointer;padding:18px 20px}.head[data-v-427c31ba]{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.name[data-v-427c31ba]{color:var(--text-secondary);letter-spacing:-.01em;font-size:13px;font-weight:600}.stat[data-v-427c31ba]{letter-spacing:-.02em;margin-bottom:4px;font-size:20px;font-weight:600;line-height:1}.sub[data-v-427c31ba]{color:var(--text-tertiary);font-size:11px}.badge[data-v-49acbbde]{border-radius:var(--radius-pill);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border:1px solid;padding:4px 10px;font-size:10px;font-weight:600}.badge.active[data-v-49acbbde]{color:var(--color-success);background:#4ade8026;border-color:#4ade804d}.badge.review[data-v-49acbbde]{color:var(--color-warning);background:#fbbf2426;border-color:#fbbf244d}.badge.info[data-v-49acbbde]{color:var(--color-info);background:#6bb4ff26;border-color:#6bb4ff4d}.badge.neutral[data-v-49acbbde],.badge[data-v-49acbbde]:not(.active):not(.review):not(.info){background:var(--glass-bg);color:var(--text-secondary);border-color:var(--glass-border)}.session-card-link[data-v-efb69151]{color:inherit;text-decoration:none;display:block}.session-card[data-v-efb69151]{border-radius:var(--radius-xl);gap:var(--space-3);flex-direction:column;height:100%;padding:20px 24px;display:flex}.head[data-v-efb69151]{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.identity[data-v-efb69151]{min-width:0}.name[data-v-efb69151]{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:16px;font-weight:600;overflow:hidden}.client[data-v-efb69151]{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.mandate[data-v-efb69151]{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.mandate-empty[data-v-efb69151]{color:var(--text-tertiary);font-size:13px;font-style:italic}.foot[data-v-efb69151]{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.time[data-v-efb69151]{color:var(--text-tertiary);font-size:11px}.btn-icon[data-v-efb69151]{color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:6px;display:flex}.btn-icon[data-v-efb69151]:hover{color:var(--color-danger);background:#f8717114;border-color:#f871714d}.btn-icon svg[data-v-efb69151]{width:14px;height:14px}.briques-grid[data-v-4fb03d32]{gap:var(--space-4);grid-template-columns:repeat(5,1fr);display:grid}.sessions-grid[data-v-4fb03d32]{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.status[data-v-4fb03d32]{padding:var(--space-6);text-align:center;color:var(--text-secondary)}.empty[data-v-4fb03d32]{border-radius:var(--radius-xl);text-align:center;padding:48px 32px}.empty-content[data-v-4fb03d32]{align-items:center;gap:var(--space-3);flex-direction:column;max-width:480px;margin:0 auto;display:flex}.empty-icon[data-v-4fb03d32]{background:var(--glass-bg-strong);border:1px solid var(--glass-border);width:56px;height:56px;color:var(--text-secondary);margin-bottom:var(--space-2);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-icon svg[data-v-4fb03d32]{width:28px;height:28px}.empty h3[data-v-4fb03d32]{letter-spacing:-.02em;font-size:18px;font-weight:600}.empty p[data-v-4fb03d32]{color:var(--text-secondary);margin-bottom:var(--space-2);font-size:14px;line-height:1.6}.api-debug[data-v-4fb03d32]{margin-top:var(--space-6);color:var(--text-tertiary);opacity:.6;font-size:12px}@media (width<=1024px){.briques-grid[data-v-4fb03d32]{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.briques-grid[data-v-4fb03d32]{grid-template-columns:repeat(2,1fr)}}.provider[data-v-125ab800]{border-radius:var(--radius-xl);gap:var(--space-3);flex-direction:column;padding:20px 24px;display:flex}.head[data-v-125ab800]{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.identity[data-v-125ab800]{align-items:center;gap:var(--space-3);min-width:0;display:flex}.kind-pill[data-v-125ab800]{border-radius:var(--radius-pill);letter-spacing:.08em;color:var(--color-info);background:#6bb4ff26;border:1px solid #6bb4ff4d;flex-shrink:0;padding:4px 10px;font-size:10px;font-weight:600}.name[data-v-125ab800]{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.head-meta[data-v-125ab800]{flex-shrink:0;align-items:center;gap:10px;display:flex}.body[data-v-125ab800]{flex-direction:column;gap:6px;display:flex}.line[data-v-125ab800]{justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.label[data-v-125ab800]{color:var(--text-tertiary);font-weight:500}.value[data-v-125ab800]{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.value.muted[data-v-125ab800]{color:var(--text-tertiary);font-style:italic}.test-result[data-v-125ab800]{border-radius:var(--radius-sm);padding:8px 12px;font-size:12px}.test-result.ok[data-v-125ab800]{color:var(--color-success);background:#4ade801a;border:1px solid #4ade8040}.test-result.err[data-v-125ab800]{color:var(--color-danger);background:#f871711a;border:1px solid #f8717140}.actions[data-v-125ab800]{flex-wrap:wrap;gap:8px;display:flex}.actions .btn[data-v-125ab800]{padding:6px 12px;font-size:12px}.btn-danger[data-v-125ab800]{color:var(--color-danger);border-color:#f871714d}.btn-danger[data-v-125ab800]:hover{border-color:var(--color-danger);background:#f871711a}.modal-backdrop[data-v-3a72462f]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#061f2aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal[data-v-3a72462f]{border-radius:var(--radius-xl);width:100%;max-width:640px;max-height:90vh;padding:28px 32px;overflow-y:auto}.modal-head[data-v-3a72462f]{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-3a72462f]{font-size:18px;font-weight:600}.close-btn[data-v-3a72462f]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:18px}.close-btn[data-v-3a72462f]:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.presets[data-v-3a72462f]{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--glass-border)}.presets-label[data-v-3a72462f]{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:var(--space-2);font-size:11px;font-weight:600}.presets-grid[data-v-3a72462f]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;display:grid}.preset[data-v-3a72462f]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);transition:all var(--transition-fast);text-align:left;padding:8px 10px;font-family:inherit;font-size:12px}.preset[data-v-3a72462f]:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-strong)}.preset.active[data-v-3a72462f]{border-color:var(--fh-amber);color:var(--fh-amber-bright);background:#b8744a26}.form[data-v-3a72462f]{gap:var(--space-4);flex-direction:column;display:flex}.field[data-v-3a72462f]{flex-direction:column;gap:6px;display:flex}.field label[data-v-3a72462f]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;align-items:baseline;gap:8px;font-size:12px;font-weight:500;display:flex}.hint[data-v-3a72462f]{text-transform:none;letter-spacing:0;color:var(--text-tertiary);margin-top:2px;font-size:11px;font-weight:400}.hint.err[data-v-3a72462f]{color:var(--color-danger)}input[type=text][data-v-3a72462f],input[type=url][data-v-3a72462f],input[type=password][data-v-3a72462f],input[type=number][data-v-3a72462f],select[data-v-3a72462f],textarea[data-v-3a72462f]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);width:100%;padding:10px 14px;font-family:inherit;font-size:14px}textarea[data-v-3a72462f]{font-family:var(--font-mono);resize:vertical;min-height:150px;font-size:12.5px;line-height:1.5}input[data-v-3a72462f]:focus,select[data-v-3a72462f]:focus,textarea[data-v-3a72462f]:focus{background:var(--glass-bg-hover);border-color:var(--fh-amber-bright);outline:none}select[data-v-3a72462f]{cursor:pointer}.model-field[data-v-3a72462f],.prompt-field[data-v-3a72462f]{border-radius:var(--radius-md);background:#b8744a0d;border:1px solid #b8744a26;padding:14px 16px}.model-head[data-v-3a72462f],.prompt-head[data-v-3a72462f]{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:6px;display:flex}.prompt-actions[data-v-3a72462f]{gap:6px;display:flex}.btn-small[data-v-3a72462f]{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;padding:6px 12px;font-family:inherit;font-size:11px;font-weight:500}.btn-small[data-v-3a72462f]:hover:not(:disabled){background:var(--glass-bg-hover);border-color:var(--fh-amber);color:var(--fh-amber-bright)}.btn-small.btn-danger[data-v-3a72462f]:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}.btn-small[data-v-3a72462f]:disabled{opacity:.5;cursor:not-allowed}.checkbox[data-v-3a72462f]{cursor:pointer;color:var(--text-primary);text-transform:none;letter-spacing:0;align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.checkbox input[data-v-3a72462f]{cursor:pointer;width:auto}.error[data-v-3a72462f]{border-radius:var(--radius-md);color:var(--color-danger);background:#f871711a;border:1px solid #f871714d;padding:10px 14px;font-size:12px}.modal-foot[data-v-3a72462f]{margin-top:var(--space-3);justify-content:flex-end;gap:10px;display:flex}.fade-enter-active[data-v-3a72462f],.fade-leave-active[data-v-3a72462f]{transition:opacity var(--transition-base)}.fade-enter-from[data-v-3a72462f],.fade-leave-to[data-v-3a72462f]{opacity:0}.source[data-v-49a09a7a]{border-radius:var(--radius-xl);gap:var(--space-3);flex-direction:column;padding:20px 24px;display:flex}.head[data-v-49a09a7a]{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.identity[data-v-49a09a7a]{align-items:center;gap:var(--space-3);min-width:0;display:flex}.kind-pill[data-v-49a09a7a]{border-radius:var(--radius-pill);letter-spacing:.08em;border:1px solid;flex-shrink:0;padding:4px 10px;font-size:10px;font-weight:600}.kind-pill.forge[data-v-49a09a7a]{color:var(--color-info);background:#6bb4ff26;border-color:#6bb4ff4d}.kind-pill.registry[data-v-49a09a7a]{color:var(--fh-amber-bright);background:#b8744a26;border-color:#b8744a4d}.name[data-v-49a09a7a]{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.head-meta[data-v-49a09a7a]{flex-shrink:0;align-items:center;gap:10px;display:flex}.body[data-v-49a09a7a]{flex-direction:column;gap:6px;display:flex}.line[data-v-49a09a7a]{justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.label[data-v-49a09a7a]{color:var(--text-tertiary);font-weight:500}.value[data-v-49a09a7a]{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.test-result[data-v-49a09a7a]{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex}.test-result.ok[data-v-49a09a7a]{color:var(--color-success);background:#4ade801a;border:1px solid #4ade8040}.test-result.err[data-v-49a09a7a]{color:var(--color-danger);background:#f871711a;border:1px solid #f8717140}.latency[data-v-49a09a7a]{color:var(--text-tertiary);margin-left:auto}.actions[data-v-49a09a7a]{flex-wrap:wrap;gap:8px;display:flex}.actions .btn[data-v-49a09a7a]{padding:6px 12px;font-size:12px}.btn-danger[data-v-49a09a7a]{color:var(--color-danger);border-color:#f871714d}.btn-danger[data-v-49a09a7a]:hover{border-color:var(--color-danger);background:#f871711a}.modal-backdrop[data-v-87d4261d]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#061f2aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal[data-v-87d4261d]{border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;padding:28px 32px;overflow-y:auto}.modal-head[data-v-87d4261d]{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-87d4261d]{font-size:18px;font-weight:600}.close-btn[data-v-87d4261d]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;padding:4px 8px;font-size:18px}.close-btn[data-v-87d4261d]:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.presets[data-v-87d4261d]{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--glass-border)}.presets-label[data-v-87d4261d]{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:var(--space-2);font-size:11px;font-weight:600}.presets-grid[data-v-87d4261d]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.preset[data-v-87d4261d]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);color:var(--text-primary);justify-content:space-between;align-items:center;gap:6px;padding:8px 10px;font-family:inherit;font-size:12px;display:flex}.preset[data-v-87d4261d]:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-strong)}.preset.active[data-v-87d4261d]{border-color:var(--fh-amber);color:var(--fh-amber-bright);background:#b8744a26}.preset-name[data-v-87d4261d]{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.preset-bonus[data-v-87d4261d]{border-radius:var(--radius-pill);flex-shrink:0;padding:2px 6px;font-size:10px}.preset-bonus.pos[data-v-87d4261d]{color:var(--color-success);background:#4ade8026}.preset-bonus.neg[data-v-87d4261d]{color:var(--color-warning);background:#fbbf2426}.form[data-v-87d4261d]{gap:var(--space-4);flex-direction:column;display:flex}.field[data-v-87d4261d]{flex-direction:column;gap:6px;display:flex}.field label[data-v-87d4261d]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;align-items:baseline;gap:8px;font-size:12px;font-weight:500;display:flex}.field-grid[data-v-87d4261d]{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.hint[data-v-87d4261d]{text-transform:none;letter-spacing:0;color:var(--text-tertiary);margin-top:2px;font-size:11px;font-weight:400}input[type=text][data-v-87d4261d],input[type=url][data-v-87d4261d],input[type=password][data-v-87d4261d],input[type=number][data-v-87d4261d],select[data-v-87d4261d]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);width:100%;padding:10px 14px;font-family:inherit;font-size:14px}input[data-v-87d4261d]:focus,select[data-v-87d4261d]:focus{background:var(--glass-bg-hover);border-color:var(--fh-amber-bright);outline:none}select[data-v-87d4261d]{cursor:pointer}.checkbox[data-v-87d4261d]{cursor:pointer;color:var(--text-primary);text-transform:none;letter-spacing:0;align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.checkbox input[data-v-87d4261d]{cursor:pointer;width:auto}.error[data-v-87d4261d]{border-radius:var(--radius-md);color:var(--color-danger);background:#f871711a;border:1px solid #f871714d;padding:10px 14px;font-size:12px}.modal-foot[data-v-87d4261d]{margin-top:var(--space-3);justify-content:flex-end;gap:10px;display:flex}.fade-enter-active[data-v-87d4261d],.fade-leave-active[data-v-87d4261d]{transition:opacity var(--transition-base)}.fade-enter-from[data-v-87d4261d],.fade-leave-to[data-v-87d4261d]{opacity:0}.doctrine-panel[data-v-09feff33]{flex-direction:column;gap:1.5rem;display:flex}.doctrine-category[data-v-09feff33]{border-radius:var(--radius-md,12px);padding:1.25rem 1.5rem}.doctrine-category-header[data-v-09feff33]{align-items:baseline;gap:.75rem;margin-bottom:1rem;display:flex}.doctrine-category-header h3[data-v-09feff33]{margin:0;font-size:1.05rem;font-weight:600}.doctrine-cat-count[data-v-09feff33]{color:var(--text-muted,#888);background:var(--surface-subtle,#ffffff0d);border-radius:999px;padding:.1rem .5rem;font-size:.8rem}.doctrine-list[data-v-09feff33]{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.doctrine-item[data-v-09feff33]{border-bottom:1px solid var(--border-subtle,#ffffff0f);flex-direction:column;gap:.4rem;padding-bottom:1rem;display:flex}.doctrine-item[data-v-09feff33]:last-child{border-bottom:none;padding-bottom:0}.doctrine-item-header[data-v-09feff33]{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.doctrine-key[data-v-09feff33]{font-family:var(--font-mono,monospace);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:inline-flex}.doctrine-type[data-v-09feff33]{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.type-string[data-v-09feff33]{color:#6aa1ff;background:#6496ff26}.type-number[data-v-09feff33]{color:#a16aff;background:#a064ff26}.type-bool[data-v-09feff33]{color:#ffb464;background:#ffb46426}.type-json[data-v-09feff33]{color:#64dc96;background:#64dc9626}.doctrine-desc[data-v-09feff33]{color:var(--text-muted,#888);margin:0;font-size:.85rem}.doctrine-edit[data-v-09feff33]{flex-direction:column;gap:.5rem;display:flex}.doctrine-input[data-v-09feff33]{font-family:var(--font-mono,monospace);background:var(--surface-input,#0003);border:1px solid var(--border-input,#ffffff1a);border-radius:var(--radius-sm,6px);color:inherit;box-sizing:border-box;resize:vertical;width:100%;padding:.5rem .75rem;font-size:.9rem}.doctrine-input[data-v-09feff33]:focus{border-color:var(--accent,#5a8dff);outline:none}.doctrine-input[data-v-09feff33]:disabled{opacity:.5}.doctrine-actions[data-v-09feff33]{justify-content:flex-end;gap:.5rem;display:flex}.btn-sm[data-v-09feff33]{padding:.35rem .85rem;font-size:.85rem}.doctrine-saved[data-v-09feff33]{color:#4ade80;font-size:.8rem;font-weight:500}.tabs[data-v-0befcc2b]{border-radius:var(--radius-pill);margin-bottom:var(--space-6);gap:4px;width:fit-content;padding:6px;display:flex}.tab[data-v-0befcc2b]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-pill);transition:all var(--transition-base);background:0 0;border:none;align-items:center;gap:8px;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.tab[data-v-0befcc2b]:hover{color:var(--text-primary)}.tab.active[data-v-0befcc2b]{background:var(--glass-bg-strong);color:var(--fh-amber-bright);box-shadow:inset 0 1px 0 0 var(--glass-highlight)}.tab svg[data-v-0befcc2b]{width:14px;height:14px}.tab-panel[data-v-0befcc2b]{gap:var(--space-4);flex-direction:column;display:flex}.actions-row[data-v-0befcc2b]{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-4);display:flex}.lead[data-v-0befcc2b]{color:var(--text-secondary);max-width:760px;font-size:14px;line-height:1.6}.lead strong[data-v-0befcc2b]{color:var(--fh-amber-bright);font-weight:600}.grid[data-v-0befcc2b]{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(380px,1fr));display:grid}.status[data-v-0befcc2b]{padding:var(--space-6);text-align:center;color:var(--text-secondary)}.status.err[data-v-0befcc2b]{color:var(--color-danger)}.empty[data-v-0befcc2b]{text-align:center;border-radius:var(--radius-xl);padding:48px 32px}.empty h3[data-v-0befcc2b]{margin-bottom:var(--space-2);font-size:16px;font-weight:600}.empty p[data-v-0befcc2b]{color:var(--text-secondary)}.modal-backdrop[data-v-edd5a7b2]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#061f2aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal[data-v-edd5a7b2]{border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:90vh;padding:28px 32px;overflow-y:auto}.modal-head[data-v-edd5a7b2]{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-edd5a7b2]{font-size:18px;font-weight:600}.close-btn[data-v-edd5a7b2]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;padding:4px 8px;font-size:18px}.close-btn[data-v-edd5a7b2]:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.form[data-v-edd5a7b2]{gap:var(--space-4);flex-direction:column;display:flex}.field[data-v-edd5a7b2]{flex-direction:column;gap:6px;display:flex}.field label[data-v-edd5a7b2]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:500}.hint[data-v-edd5a7b2]{color:var(--text-tertiary);margin-top:2px;font-size:11px}input[type=text][data-v-edd5a7b2],textarea[data-v-edd5a7b2]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);resize:vertical;width:100%;padding:10px 14px;font-family:inherit;font-size:14px}textarea[data-v-edd5a7b2]{min-height:100px;line-height:1.5}input[data-v-edd5a7b2]:focus,textarea[data-v-edd5a7b2]:focus{background:var(--glass-bg-hover);border-color:var(--fh-amber-bright);outline:none}.error[data-v-edd5a7b2]{border-radius:var(--radius-md);color:var(--color-danger);background:#f871711a;border:1px solid #f871714d;padding:10px 14px;font-size:12px}.modal-foot[data-v-edd5a7b2]{margin-top:var(--space-3);justify-content:flex-end;gap:10px;display:flex}.fade-enter-active[data-v-edd5a7b2],.fade-leave-active[data-v-edd5a7b2]{transition:opacity var(--transition-base)}.fade-enter-from[data-v-edd5a7b2],.fade-leave-to[data-v-edd5a7b2]{opacity:0}.actions-row[data-v-1933222e]{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-8);display:flex}.lead[data-v-1933222e]{color:var(--text-secondary);max-width:700px;font-size:14px;line-height:1.6}.grid[data-v-1933222e]{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.status[data-v-1933222e]{padding:var(--space-6);text-align:center;color:var(--text-secondary)}.status.error[data-v-1933222e]{color:var(--color-danger)}.empty[data-v-1933222e]{text-align:center;border-radius:var(--radius-xl);padding:56px 32px}.empty-content[data-v-1933222e]{align-items:center;gap:var(--space-3);flex-direction:column;max-width:420px;margin:0 auto;display:flex}.empty-icon[data-v-1933222e]{background:var(--glass-bg-strong);border:1px solid var(--glass-border);width:56px;height:56px;color:var(--text-secondary);margin-bottom:var(--space-2);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-icon svg[data-v-1933222e]{width:28px;height:28px}.empty h3[data-v-1933222e]{font-size:18px;font-weight:600}.empty p[data-v-1933222e]{color:var(--text-secondary);margin-bottom:var(--space-3);font-size:14px}.copy-btn[data-v-5c458e76]{color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:4px 8px;font-family:inherit;display:inline-flex}.copy-btn.sm[data-v-5c458e76]{padding:4px 8px;font-size:11px}.copy-btn.md[data-v-5c458e76]{padding:6px 12px;font-size:12px}.copy-btn.ghost[data-v-5c458e76]:hover{color:var(--text-primary);background:var(--glass-bg-hover);border-color:var(--glass-border)}.copy-btn.outline[data-v-5c458e76]{border-color:var(--glass-border);background:var(--glass-bg)}.copy-btn.outline[data-v-5c458e76]:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-strong);color:var(--text-primary)}.copy-btn.copied[data-v-5c458e76]{color:var(--color-success);background:#4ade8014;border-color:#4ade804d}.copy-btn svg[data-v-5c458e76]{flex-shrink:0;width:14px;height:14px}.copy-btn.md svg[data-v-5c458e76]{width:16px;height:16px}.lbl[data-v-5c458e76]{letter-spacing:.02em;font-weight:500}.msg[data-v-9acc98a5]{width:100%;display:flex}.msg.user[data-v-9acc98a5]{justify-content:flex-end}.msg.agent[data-v-9acc98a5],.msg.system[data-v-9acc98a5],.msg.tool[data-v-9acc98a5]{justify-content:flex-start}.bubble[data-v-9acc98a5]{border-radius:var(--radius-lg);background:var(--glass-bg);border:1px solid var(--glass-border);min-width:0;max-width:78%;padding:12px 16px}.msg.user .bubble[data-v-9acc98a5]{background:#b8744a1f;border-color:#b8744a4d;border-top-right-radius:4px}.msg.agent .bubble[data-v-9acc98a5]{background:var(--glass-bg);border-color:var(--glass-border);border-top-left-radius:4px}.meta[data-v-9acc98a5]{text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;font-size:10px;display:flex}.meta-right[data-v-9acc98a5]{align-items:center;gap:6px;display:flex}.role[data-v-9acc98a5]{color:var(--text-secondary);font-weight:600}.msg.user .role[data-v-9acc98a5]{color:var(--fh-amber-bright)}.time[data-v-9acc98a5]{color:var(--text-tertiary)}.action-btn[data-v-9acc98a5]{color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:4px;display:inline-flex}.action-btn[data-v-9acc98a5]:hover{color:var(--fh-amber-bright);background:var(--glass-bg-hover);border-color:var(--glass-border)}.action-btn svg[data-v-9acc98a5]{width:13px;height:13px}.content[data-v-9acc98a5]{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.55}.markdown-body[data-v-9acc98a5]{white-space:normal}.markdown-body[data-v-9acc98a5] h1{letter-spacing:-.01em;color:var(--fh-amber-bright);margin:8px 0 6px;font-size:16px;font-weight:600}.markdown-body[data-v-9acc98a5] h2{color:var(--text-primary);margin:12px 0 6px;font-size:14px;font-weight:600}.markdown-body[data-v-9acc98a5] h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:10px 0 4px;font-size:13px;font-weight:600}.markdown-body[data-v-9acc98a5] p{margin-bottom:6px}.markdown-body[data-v-9acc98a5] p:last-child{margin-bottom:0}.markdown-body[data-v-9acc98a5] ul,.markdown-body[data-v-9acc98a5] ol{margin:6px 0 6px 20px}.markdown-body[data-v-9acc98a5] li{margin-bottom:2px}.markdown-body[data-v-9acc98a5] strong{color:var(--fh-amber-bright);font-weight:600}.markdown-body[data-v-9acc98a5] em{color:var(--text-secondary);font-style:italic}.markdown-body[data-v-9acc98a5] code{font-family:var(--font-mono);background:#0000004d;border-radius:4px;padding:1px 6px;font-size:.9em}.markdown-body[data-v-9acc98a5] pre{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#0000004d;margin:8px 0;padding:10px 14px;font-size:12px;overflow-x:auto}.markdown-body[data-v-9acc98a5] pre code{font-size:inherit;background:0 0;padding:0}.markdown-body[data-v-9acc98a5] blockquote{border-left:3px solid var(--fh-amber);color:var(--text-secondary);margin:8px 0;padding-left:12px;font-style:italic}.markdown-body[data-v-9acc98a5] a{color:var(--fh-amber-bright);-webkit-text-decoration:underline #d9906466;text-decoration:underline #d9906466}.markdown-body[data-v-9acc98a5] a:hover{-webkit-text-decoration-color:var(--fh-amber);text-decoration-color:var(--fh-amber)}.markdown-body[data-v-9acc98a5] table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px;display:block;overflow-x:auto}.markdown-body[data-v-9acc98a5] th,.markdown-body[data-v-9acc98a5] td{border:1px solid var(--glass-border);text-align:left;padding:6px 10px}.markdown-body[data-v-9acc98a5] th{background:var(--glass-bg-strong);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.markdown-body[data-v-9acc98a5] hr{border:none;border-top:1px solid var(--glass-border);margin:12px 0}.cursor[data-v-9acc98a5]{color:var(--fh-amber-bright);margin-left:2px;animation:1s infinite blink-9acc98a5;display:inline-block}@keyframes blink-9acc98a5{0%,50%{opacity:1}50.01%,to{opacity:0}}.bubble.streaming[data-v-9acc98a5]{border-color:var(--fh-amber-bright);box-shadow:0 0 12px #d9906426}.chat-input[data-v-b26592cc]{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);align-items:flex-end;display:flex}textarea[data-v-b26592cc]{resize:none;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-height:48px;max-height:200px;padding:6px 0;font-family:inherit;font-size:14px;line-height:1.55}textarea[data-v-b26592cc]::placeholder{color:var(--text-tertiary)}textarea[data-v-b26592cc]:disabled{color:var(--text-tertiary);cursor:not-allowed}.send-btn[data-v-b26592cc]{flex-shrink:0}.send-btn svg[data-v-b26592cc]{width:14px;height:14px}.send-btn[data-v-b26592cc]:disabled{opacity:.5;cursor:not-allowed}.modal-backdrop[data-v-500d52e9]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#061f2aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal[data-v-500d52e9]{border-radius:var(--radius-xl);width:100%;max-width:540px;max-height:90vh;padding:28px 32px;overflow-y:auto}.modal-head[data-v-500d52e9]{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-500d52e9]{font-size:18px;font-weight:600}.close-btn[data-v-500d52e9]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:18px}.close-btn[data-v-500d52e9]:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.lead[data-v-500d52e9]{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:13px;line-height:1.55}.field[data-v-500d52e9]{margin-bottom:var(--space-4);flex-direction:column;gap:6px;display:flex}.field label[data-v-500d52e9]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:500}.hint[data-v-500d52e9]{color:var(--text-tertiary);font-size:11px}textarea[data-v-500d52e9]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);font-family:var(--font-mono);color:var(--text-primary);resize:vertical;width:100%;min-height:120px;padding:10px 14px;font-size:13px}textarea[data-v-500d52e9]:focus{background:var(--glass-bg-hover);border-color:var(--fh-amber-bright);outline:none}.modal-foot[data-v-500d52e9]{justify-content:flex-end;gap:10px;display:flex}.btn-primary svg[data-v-500d52e9]{width:14px;height:14px}.fade-enter-active[data-v-500d52e9],.fade-leave-active[data-v-500d52e9]{transition:opacity var(--transition-base)}.fade-enter-from[data-v-500d52e9],.fade-leave-to[data-v-500d52e9]{opacity:0}.modal-backdrop[data-v-49f828a2]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#061f2aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal[data-v-49f828a2]{border-radius:var(--radius-xl);width:100%;max-width:620px;max-height:90vh;padding:28px 32px;overflow-y:auto}.modal-head[data-v-49f828a2]{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-49f828a2]{font-size:18px;font-weight:600}.close-btn[data-v-49f828a2]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:18px}.close-btn[data-v-49f828a2]:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.lead[data-v-49f828a2]{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:13px;line-height:1.55}.lead code[data-v-49f828a2]{font-family:var(--font-mono);background:#0000004d;border-radius:4px;padding:1px 6px;font-size:.9em}.field[data-v-49f828a2]{margin-bottom:var(--space-4);flex-direction:column;gap:6px;display:flex}.field label[data-v-49f828a2]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:500}.hint[data-v-49f828a2]{color:var(--text-tertiary);font-size:11px}textarea[data-v-49f828a2]{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);resize:vertical;width:100%;min-height:160px;padding:10px 14px;font-family:inherit;font-size:13px;line-height:1.5}textarea[data-v-49f828a2]:focus{background:var(--glass-bg-hover);border-color:var(--fh-amber-bright);outline:none}.modal-foot[data-v-49f828a2]{justify-content:flex-end;gap:10px;display:flex}.btn-primary svg[data-v-49f828a2]{width:14px;height:14px}.fade-enter-active[data-v-49f828a2],.fade-leave-active[data-v-49f828a2]{transition:opacity var(--transition-base)}.fade-enter-from[data-v-49f828a2],.fade-leave-to[data-v-49f828a2]{opacity:0}.status[data-v-4bcdc646]{padding:var(--space-6);text-align:center;color:var(--text-secondary)}.status.err[data-v-4bcdc646]{color:var(--color-danger)}.header-row[data-v-4bcdc646]{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.back-link[data-v-4bcdc646]{color:var(--text-secondary);font-size:13px;text-decoration:none}.back-link[data-v-4bcdc646]:hover{color:var(--fh-amber-bright)}.card[data-v-4bcdc646]{border-radius:var(--radius-xl);margin-bottom:var(--space-6);padding:24px 28px}.card-head[data-v-4bcdc646]{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.card-title[data-v-4bcdc646]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:600}.client[data-v-4bcdc646]{color:var(--text-tertiary);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.mandate[data-v-4bcdc646]{color:var(--text-primary);white-space:pre-wrap;font-size:15px;line-height:1.6}.mandate-empty[data-v-4bcdc646]{color:var(--text-tertiary);font-style:italic}.chat-section[data-v-4bcdc646]{gap:var(--space-3);flex-direction:column;display:flex;position:relative}.chat-header[data-v-4bcdc646]{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.chat-header-actions[data-v-4bcdc646]{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.chat-header-actions .btn[data-v-4bcdc646]{padding:6px 12px;font-size:12px}.chat-header-actions .btn svg[data-v-4bcdc646]{width:13px;height:13px}.btn-builder[data-v-4bcdc646]{color:var(--fh-amber-bright);background:#b8744a1a;border-color:#b8744a59}.btn-builder[data-v-4bcdc646]:hover:not(:disabled){border-color:var(--fh-amber-bright);background:#b8744a2e}.running[data-v-4bcdc646]{color:var(--fh-amber-bright);align-items:center;gap:8px;font-size:11px;display:flex}.running.researcher[data-v-4bcdc646]{color:var(--color-purple)}.running.builder[data-v-4bcdc646]{color:var(--fh-amber-bright)}.pulse-dot[data-v-4bcdc646]{background:currentColor;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite pulse-4bcdc646}@keyframes pulse-4bcdc646{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.chat-body[data-v-4bcdc646]{border-radius:var(--radius-xl);padding:var(--space-4);gap:var(--space-3);scroll-behavior:smooth;flex-direction:column;min-height:320px;max-height:60vh;display:flex;overflow-y:auto}.chat-empty[data-v-4bcdc646]{text-align:center;color:var(--text-secondary);margin:auto}.chat-empty p[data-v-4bcdc646]{margin-bottom:6px}.chat-empty .hint[data-v-4bcdc646]{color:var(--text-tertiary);max-width:460px;font-size:12px}.scroll-jump[data-v-4bcdc646]{bottom:120px;right:var(--space-4);background:var(--fh-amber);width:36px;height:36px;color:var(--fh-petrol-deep);cursor:pointer;transition:all var(--transition-base);z-index:5;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex;position:absolute;box-shadow:0 4px 16px #0000004d}.scroll-jump[data-v-4bcdc646]:hover{background:var(--fh-amber-bright);transform:translateY(-2px)}.chat-error[data-v-4bcdc646]{border-radius:var(--radius-md);color:var(--color-danger);background:#f871711a;border:1px solid #f871714d;padding:10px 14px;font-size:12px}.card[data-v-e44f5163]{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-xl);flex-direction:column;display:flex}.card-head[data-v-e44f5163]{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.title-row[data-v-e44f5163]{align-items:center;gap:8px;display:flex}.title-row h3[data-v-e44f5163]{font-size:15px;font-weight:600}.dot[data-v-e44f5163]{background:var(--text-secondary);opacity:.4;border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot.on[data-v-e44f5163]{background:var(--fh-amber-bright);opacity:1}.badge[data-v-e44f5163]{border-radius:var(--radius-pill);background:var(--glass-bg-strong);color:var(--text-secondary);padding:3px 10px;font-size:11px}.meta[data-v-e44f5163]{flex-direction:column;gap:6px;display:flex}.meta>div[data-v-e44f5163]{justify-content:space-between;gap:var(--space-3);display:flex}.meta dt[data-v-e44f5163]{color:var(--text-secondary);font-size:12px}.meta dd[data-v-e44f5163]{text-align:right;word-break:break-all;font-size:13px}.test-result[data-v-e44f5163]{border-radius:var(--radius-md,10px);background:var(--glass-bg-strong);flex-direction:column;gap:4px;padding:10px 12px;font-size:12px;display:flex}.test-result.ok strong[data-v-e44f5163]{color:var(--fh-amber-bright)}.test-result.err strong[data-v-e44f5163]{color:var(--color-danger)}.msg[data-v-e44f5163]{color:var(--text-secondary);word-break:break-word}.probes[data-v-e44f5163]{color:var(--text-secondary);gap:12px;display:flex}.probes .yes[data-v-e44f5163]{color:var(--fh-amber-bright)}.actions[data-v-e44f5163]{padding-top:var(--space-2);flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.btn.danger[data-v-e44f5163]{color:var(--color-danger)}.mono[data-v-e44f5163]{font-family:var(--font-mono,monospace)}.overlay[data-v-c6f511e7]{z-index:100;padding:var(--space-4);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-c6f511e7]{-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-xl);width:100%;max-width:540px;max-height:90vh;padding:var(--space-5);gap:var(--space-4);background:#101b24f7;border:1px solid #ffffff1f;flex-direction:column;display:flex;overflow-y:auto;box-shadow:0 24px 64px #00000080}.modal-head[data-v-c6f511e7]{justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-c6f511e7]{font-size:17px;font-weight:600}.close[data-v-c6f511e7]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:18px}.form[data-v-c6f511e7]{gap:var(--space-3);flex-direction:column;display:flex}label[data-v-c6f511e7]{flex-direction:column;gap:6px;font-size:13px;display:flex}label>span[data-v-c6f511e7]{color:var(--text-secondary)}label em[data-v-c6f511e7]{color:var(--text-secondary);opacity:.7;font-style:italic}input[data-v-c6f511e7],select[data-v-c6f511e7],textarea[data-v-c6f511e7]{background:var(--glass-bg-strong);border:1px solid var(--glass-border,#ffffff1a);border-radius:var(--radius-md,10px);color:var(--text-primary);padding:10px 12px;font-family:inherit;font-size:14px}textarea.mono[data-v-c6f511e7],input.mono[data-v-c6f511e7]{font-family:var(--font-mono,monospace);font-size:12px}.row[data-v-c6f511e7]{gap:var(--space-3);display:flex}.row .grow[data-v-c6f511e7]{flex:1}.row .port[data-v-c6f511e7]{width:100px}.checkbox[data-v-c6f511e7]{flex-direction:row;align-items:center;gap:8px}.checkbox input[data-v-c6f511e7]{width:auto}.modal-foot[data-v-c6f511e7]{justify-content:flex-end;gap:8px;display:flex}.overlay[data-v-5254ccdc]{z-index:100;padding:var(--space-4);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-5254ccdc]{-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-xl);width:100%;max-width:620px;max-height:90vh;padding:var(--space-5);gap:var(--space-4);background:#101b24f7;border:1px solid #ffffff1f;flex-direction:column;display:flex;overflow-y:auto;box-shadow:0 24px 64px #00000080}.modal-head[data-v-5254ccdc]{justify-content:space-between;align-items:center;display:flex}.modal-head h2[data-v-5254ccdc]{font-size:17px;font-weight:600}.close[data-v-5254ccdc]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:18px}.alert.err[data-v-5254ccdc]{border-radius:var(--radius-md,10px);color:var(--color-danger);background:#dc50501f;padding:10px 12px;font-size:12px}.form[data-v-5254ccdc]{gap:var(--space-3);flex-direction:column;display:flex}label[data-v-5254ccdc]{flex-direction:column;gap:6px;font-size:13px;display:flex}label>span[data-v-5254ccdc]{color:var(--text-secondary)}.hint[data-v-5254ccdc]{color:var(--text-secondary);opacity:.7;font-size:11px;font-style:italic}input[data-v-5254ccdc],select[data-v-5254ccdc]{background:var(--glass-bg-strong);border:1px solid var(--glass-border,#ffffff1a);border-radius:var(--radius-md,10px);color:var(--text-primary);padding:10px 12px;font-family:inherit;font-size:14px}.modal-foot[data-v-5254ccdc]{margin-top:var(--space-2);justify-content:flex-end;gap:8px;display:flex}.review[data-v-5254ccdc]{gap:var(--space-3);flex-direction:column;display:flex}.plan-head[data-v-5254ccdc]{justify-content:space-between;align-items:baseline;display:flex}.plan-head h3[data-v-5254ccdc]{font-size:15px;font-weight:600}.dest[data-v-5254ccdc]{color:var(--fh-amber-bright);font-size:12px}.plan-meta[data-v-5254ccdc]{flex-direction:column;gap:6px;display:flex}.plan-meta>div[data-v-5254ccdc]{justify-content:space-between;gap:var(--space-3);display:flex}.plan-meta dt[data-v-5254ccdc]{color:var(--text-secondary);font-size:12px}.plan-meta dd[data-v-5254ccdc]{text-align:right;font-size:13px}.plan-meta .ok[data-v-5254ccdc]{color:var(--fh-amber-bright)}.block h4[data-v-5254ccdc]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600}.files[data-v-5254ccdc]{flex-direction:column;gap:4px;font-size:12px;list-style:none;display:flex}.muted[data-v-5254ccdc]{color:var(--text-secondary)}.commands[data-v-5254ccdc],.log[data-v-5254ccdc]{background:var(--glass-bg-strong);border-radius:var(--radius-md,10px);white-space:pre-wrap;word-break:break-word;max-height:320px;padding:12px;font-size:12px;overflow-y:auto}.warn-title[data-v-5254ccdc]{color:var(--color-warning,#d8a04a)}.warnings[data-v-5254ccdc]{color:var(--color-warning,#d8a04a);padding-left:18px;font-size:12px}.gate-notice[data-v-5254ccdc]{border-radius:var(--radius-md,10px);background:#d8a04a1a;padding:12px;font-size:12px;line-height:1.5}.gate-notice code[data-v-5254ccdc]{font-family:var(--font-mono,monospace);background:var(--glass-bg-strong);border-radius:4px;padding:1px 5px}.danger-confirm[data-v-5254ccdc]{background:var(--color-danger,#d35)!important}.running[data-v-5254ccdc]{align-items:center;gap:var(--space-4);padding:var(--space-6);flex-direction:column;display:flex}.spinner[data-v-5254ccdc]{border:3px solid var(--glass-bg-strong);border-top-color:var(--fh-amber-bright);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin-5254ccdc}@keyframes spin-5254ccdc{to{transform:rotate(360deg)}}.result-head[data-v-5254ccdc]{flex-direction:column;gap:4px;display:flex}.result-head.ok strong[data-v-5254ccdc]{color:var(--fh-amber-bright)}.result-head.err strong[data-v-5254ccdc]{color:var(--color-danger)}.result-head .mono[data-v-5254ccdc]{color:var(--text-secondary);font-size:12px}.mono[data-v-5254ccdc]{font-family:var(--font-mono,monospace)}.tabs[data-v-c1b2c9a7]{border-radius:var(--radius-pill);margin-bottom:var(--space-6);gap:4px;width:fit-content;padding:6px;display:flex}.tab[data-v-c1b2c9a7]{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-pill);transition:all var(--transition-base);background:0 0;border:none;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:500}.tab[data-v-c1b2c9a7]:hover{color:var(--text-primary)}.tab.active[data-v-c1b2c9a7]{background:var(--glass-bg-strong);color:var(--fh-amber-bright);box-shadow:inset 0 1px 0 0 var(--glass-highlight)}.tab-panel[data-v-c1b2c9a7]{gap:var(--space-4);flex-direction:column;display:flex}.actions-row[data-v-c1b2c9a7]{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-4);display:flex}.btns[data-v-c1b2c9a7]{flex-shrink:0;gap:8px;display:flex}.lead[data-v-c1b2c9a7]{color:var(--text-secondary);max-width:760px;font-size:14px;line-height:1.6}.lead strong[data-v-c1b2c9a7]{color:var(--fh-amber-bright);font-weight:600}.grid[data-v-c1b2c9a7]{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(380px,1fr));display:grid}.status[data-v-c1b2c9a7]{padding:var(--space-6);text-align:center;color:var(--text-secondary)}.status.err[data-v-c1b2c9a7]{color:var(--color-danger)}.empty[data-v-c1b2c9a7]{text-align:center;border-radius:var(--radius-xl);padding:48px 32px}.empty h3[data-v-c1b2c9a7]{margin-bottom:var(--space-2);font-size:16px;font-weight:600}.empty p[data-v-c1b2c9a7]{color:var(--text-secondary)}.deploy-list[data-v-c1b2c9a7]{gap:var(--space-3);flex-direction:column;display:flex}.deploy-row[data-v-c1b2c9a7]{padding:var(--space-4);border-radius:var(--radius-xl);flex-direction:column;gap:8px;display:flex}.row-main[data-v-c1b2c9a7]{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.row-info[data-v-c1b2c9a7]{flex-direction:column;gap:2px;display:flex}.stack[data-v-c1b2c9a7]{font-size:14px;font-weight:600}.sub[data-v-c1b2c9a7]{color:var(--text-secondary);font-size:12px}.badge[data-v-c1b2c9a7]{border-radius:var(--radius-pill);background:var(--glass-bg-strong);padding:3px 10px;font-size:11px}.st-deployed[data-v-c1b2c9a7]{color:var(--fh-amber-bright)}.st-failed[data-v-c1b2c9a7]{color:var(--color-danger)}.st-deploying[data-v-c1b2c9a7]{color:var(--color-warning,#d8a04a)}.row-meta[data-v-c1b2c9a7]{color:var(--text-secondary);gap:6px;font-size:11px;display:flex}.row-actions[data-v-c1b2c9a7]{gap:8px;display:flex}.btn.sm[data-v-c1b2c9a7]{padding:4px 10px;font-size:12px}.btn.danger[data-v-c1b2c9a7]{color:var(--color-danger)}.log[data-v-c1b2c9a7]{background:var(--glass-bg-strong);border-radius:var(--radius-md,10px);white-space:pre-wrap;word-break:break-word;max-height:320px;padding:12px;font-size:12px;overflow-y:auto}.mono[data-v-c1b2c9a7]{font-family:var(--font-mono,monospace)}:root{--fh-petrol:#0e3745;--fh-petrol-deep:#061f2a;--fh-petrol-mid:#134a5e;--fh-amber:#b8744a;--fh-amber-bright:#d99064;--fh-cream:#f5f1e8;--color-success:#4ade80;--color-warning:#fbbf24;--color-danger:#f87171;--color-info:#6bb4ff;--color-purple:#c79fff;--color-coral:#fda4af;--glass-bg:#f5f1e80a;--glass-bg-hover:#f5f1e812;--glass-bg-strong:#f5f1e81a;--glass-border:#f5f1e81a;--glass-border-strong:#f5f1e82e;--glass-highlight:#f5f1e80f;--text-primary:#f5f1e8f2;--text-secondary:#f5f1e8a6;--text-tertiary:#f5f1e866;--font-sans:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:100px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--sidebar-width:72px;--content-max-width:1400px}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(30px)saturate(180%);border:1px solid var(--glass-border);box-shadow:inset 0 1px 0 0 var(--glass-highlight), 0 8px 32px -8px #0000004d}.glass-hover{transition:all var(--transition-base)}.glass-hover:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-strong);transform:translateY(-2px)}.glass-strong{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--glass-border-strong)}.glass-subtle{border:1px solid var(--glass-border);background:#f5f1e805}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);color:var(--text-primary);transition:all var(--transition-base);align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.btn:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-strong)}.btn-primary{background:linear-gradient(135deg, var(--fh-amber) 0%, var(--fh-amber-bright) 100%);color:var(--fh-petrol-deep);border-color:#0000;font-weight:600}.btn-primary:hover{background:linear-gradient(135deg, var(--fh-amber-bright) 0%, var(--fh-amber) 100%);transform:translateY(-1px)}.btn svg{width:16px;height:16px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font-sans);letter-spacing:-.01em;background:var(--fh-petrol-deep);color:var(--text-primary);min-height:100vh;font-weight:400;line-height:1.5;position:relative;overflow-x:hidden}#app{z-index:1;min-height:100vh;position:relative}h1{letter-spacing:-.03em;font-size:26px;font-weight:600}h2{letter-spacing:-.02em;font-size:18px;font-weight:600}h3{letter-spacing:-.01em;font-size:15px;font-weight:600}h4{font-size:13px;font-weight:600}a{color:var(--fh-amber-bright);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--fh-amber)}input,button,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}.section-header{margin:var(--space-8) 0 var(--space-4);justify-content:space-between;align-items:baseline;display:flex}.section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:600}.section-link{font-size:13px;font-weight:500}.mono{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--fh-amber);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
