.hq-page[data-v-98aaf81c],.chat-shell[data-v-98aaf81c]{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-topbar[data-v-98aaf81c]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border, #e5e7eb);flex-shrink:0}.identity[data-v-98aaf81c]{display:flex;align-items:center;gap:.75rem}.mark[data-v-98aaf81c]{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;color:var(--accent, #4f46e5)}.mark svg[data-v-98aaf81c]{width:1.5rem;height:1.5rem;stroke-width:2}.chat-heading[data-v-98aaf81c]{font-size:1rem;font-weight:600;margin:0;line-height:1.2}.chat-subheading[data-v-98aaf81c]{font-size:.75rem;color:var(--text-muted, #6b7280)}.icon-btn[data-v-98aaf81c]{background:none;border:1px solid var(--border, #e5e7eb);border-radius:.375rem;padding:.375rem;cursor:pointer;color:var(--text-muted, #6b7280);display:flex;align-items:center}.icon-btn svg[data-v-98aaf81c]{width:1rem;height:1rem;stroke-width:2}.icon-btn[data-v-98aaf81c]:hover{color:var(--text, #111827);border-color:var(--text-muted, #6b7280)}.conversation[data-v-98aaf81c]{flex:1;overflow-y:auto;padding:1.5rem}.thread[data-v-98aaf81c]{display:flex;flex-direction:column;gap:1rem;max-width:48rem;margin:0 auto}.welcome[data-v-98aaf81c]{text-align:center;padding:3rem 1rem}.welcome h1[data-v-98aaf81c]{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.welcome p[data-v-98aaf81c]{color:var(--text-muted, #6b7280);margin-bottom:1.5rem;font-size:.9rem}.chat-suggestions[data-v-98aaf81c]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.chat-suggestions button[data-v-98aaf81c]{background:var(--surface, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:1rem;padding:.375rem .875rem;font-size:.8rem;cursor:pointer;color:var(--text, #111827);transition:background .15s}.chat-suggestions button[data-v-98aaf81c]:hover{background:var(--border, #e5e7eb)}.message[data-v-98aaf81c]{display:flex;gap:.625rem;align-items:flex-start}.message.user[data-v-98aaf81c]{flex-direction:row-reverse}.avatar[data-v-98aaf81c]{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--accent, #4f46e5);color:#fff;font-size:.6rem;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:.03em}.message.user .avatar[data-v-98aaf81c]{background:var(--surface, #f3f4f6);color:var(--text, #111827);border:1px solid var(--border, #e5e7eb)}.message-body[data-v-98aaf81c]{max-width:75%}.bubble[data-v-98aaf81c]{background:var(--surface, #f3f4f6);border:1px solid var(--border, #e5e7eb);border-radius:1rem;padding:.625rem 1rem;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message.user .bubble[data-v-98aaf81c]{background:var(--accent, #4f46e5);color:#fff;border-color:transparent}.bubble--error[data-v-98aaf81c]{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.message.user .bubble--error[data-v-98aaf81c]{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.upload-icon[data-v-98aaf81c]{width:.9rem;height:.9rem;vertical-align:middle;margin-right:.375rem;stroke-width:2}.typing-dots[data-v-98aaf81c]{display:flex;gap:.3rem;padding:.75rem 1rem;background:var(--surface, #f3f4f6);border:1px solid var(--border, #e5e7eb);border-radius:1rem;align-items:center}.typing-dots span[data-v-98aaf81c]{width:.4rem;height:.4rem;border-radius:50%;background:var(--text-muted, #9ca3af);animation:dot-bounce-98aaf81c 1.2s infinite}.typing-dots span[data-v-98aaf81c]:nth-child(2){animation-delay:.2s}.typing-dots span[data-v-98aaf81c]:nth-child(3){animation-delay:.4s}@keyframes dot-bounce-98aaf81c{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-.3rem)}}.composer-wrap[data-v-98aaf81c]{border-top:1px solid var(--border, #e5e7eb);padding:.875rem 1.5rem;flex-shrink:0}.composer[data-v-98aaf81c]{display:flex;align-items:flex-end;gap:.5rem;max-width:48rem;margin:0 auto;background:var(--surface, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:.75rem;padding:.375rem .375rem .375rem .625rem}.attach-btn[data-v-98aaf81c],.send-btn[data-v-98aaf81c]{flex-shrink:0;width:2rem;height:2rem;border-radius:.5rem;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:none;color:var(--text-muted, #6b7280);transition:color .15s,background .15s}.attach-btn svg[data-v-98aaf81c],.send-btn svg[data-v-98aaf81c]{width:1rem;height:1rem;stroke-width:2}.attach-btn[data-v-98aaf81c]:hover:not(:disabled){color:var(--text, #111827);background:var(--border, #e5e7eb)}.send-btn[data-v-98aaf81c]:not(:disabled){color:var(--accent, #4f46e5)}.send-btn[data-v-98aaf81c]:hover:not(:disabled){background:var(--border, #e5e7eb)}.send-btn[data-v-98aaf81c]:disabled,.attach-btn[data-v-98aaf81c]:disabled{opacity:.4;cursor:not-allowed}textarea[data-v-98aaf81c]{flex:1;border:none;background:transparent;resize:none;font-size:.875rem;line-height:1.5;padding:.375rem 0;outline:none;font-family:inherit;min-height:1.5rem;max-height:12rem;overflow-y:auto}.graph-page[data-v-c238fae4]{position:relative;height:100%;min-height:0;overflow:hidden;background:#fbfaf7}.graph-canvas[data-v-c238fae4]{width:100%;height:100%;display:block}.graph-controls[data-v-c238fae4]{position:absolute;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.35rem;z-index:5}.ctrl-btn[data-v-c238fae4]{width:2rem;height:2rem;border:1px solid #ddd7cd;border-radius:7px;background:#ffffffe6;color:#746f67;font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .12s,color .12s}.ctrl-btn[data-v-c238fae4]:hover{background:#e7f2ef;color:#126b5f}.graph-breadcrumb[data-v-c238fae4]{position:absolute;top:.75rem;left:.75rem;z-index:5}.breadcrumb-btn[data-v-c238fae4]{padding:.35rem .7rem;border:1px solid #ddd7cd;border-radius:7px;background:#ffffffe6;color:#746f67;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .12s,color .12s}.breadcrumb-btn[data-v-c238fae4]:hover{background:#e7f2ef;color:#126b5f}.graph-overlay[data-v-c238fae4]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#fbfaf7d1;z-index:8}.graph-state-card[data-v-c238fae4]{background:#fff;border:1px solid #ddd7cd;border-radius:14px;padding:1.5rem 2rem;text-align:center;max-width:320px;box-shadow:0 4px 24px #18151114}.graph-state-kicker[data-v-c238fae4]{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#126b5f;margin:0 0 .4rem}.graph-state-copy[data-v-c238fae4]{font-size:.88rem;color:#746f67;margin:0 0 .75rem;line-height:1.45}.graph-state-btn[data-v-c238fae4]{padding:.45rem 1rem;border:1px solid #b7d2cc;border-radius:8px;background:transparent;color:#126b5f;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .12s}.graph-state-btn[data-v-c238fae4]:hover{background:#e7f2ef}.node-detail[data-v-c238fae4]{--node-accent: #126b5f;position:absolute;top:0;right:0;bottom:0;width:300px;background:#fff;border-left:1px solid #ddd7cd;padding:1.25rem 1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;z-index:10}.node-detail-close[data-v-c238fae4]{position:absolute;top:.75rem;right:.75rem;width:1.75rem;height:1.75rem;border:0;border-radius:6px;background:#f0ede6;color:#746f67;font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.node-detail-close[data-v-c238fae4]:hover{background:#e5e0d8}.detail-badge[data-v-c238fae4]{display:inline-block;padding:.2rem .6rem;border-radius:999px;background:var(--node-accent);color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;width:fit-content}.detail-title[data-v-c238fae4]{font-size:.95rem;font-weight:700;color:#181511;margin:0;padding-right:1.5rem;line-height:1.3}.detail-panel-enter-active[data-v-c238fae4],.detail-panel-leave-active[data-v-c238fae4]{transition:transform .22s ease,opacity .22s ease}.detail-panel-enter-from[data-v-c238fae4],.detail-panel-leave-to[data-v-c238fae4]{transform:translate(100%);opacity:0}.node-detail-row[data-v-c238fae4]{font-size:.78rem;color:#746f67;margin:.15rem 0 0;line-height:1.35}.node-detail-fields[data-v-c238fae4]{display:flex;flex-direction:column;gap:.4rem;margin:.35rem 0 0}.node-detail-field[data-v-c238fae4]{display:flex;flex-direction:column;gap:.1rem}.node-detail-field dt[data-v-c238fae4]{font-size:.62rem;font-weight:700;color:#9a9388;text-transform:uppercase;letter-spacing:.05em}.node-detail-field dd[data-v-c238fae4]{font-size:.78rem;color:#181511;margin:0;display:flex;align-items:center;gap:.3rem}.node-review-chip[data-v-c238fae4]{font-size:.65rem;font-weight:700;padding:.1rem .4rem;border-radius:5px;text-transform:uppercase;letter-spacing:.03em}.node-review-chip--approved[data-v-c238fae4]{background:#d1fae5;color:#065f46}.node-review-chip--approved_by_extraction[data-v-c238fae4]{background:#dcfce7;color:#166534}.node-review-chip--pending_review[data-v-c238fae4]{background:#fef3c7;color:#92400e}.node-review-chip--rejected[data-v-c238fae4]{background:#fee2e2;color:#991b1b}.node-review-chip--duplicate_deleted[data-v-c238fae4]{background:#f3f4f6;color:#374151}.node-review-chip--failed[data-v-c238fae4]{background:#fee2e2;color:#991b1b}.node-detail-section[data-v-c238fae4]{font-size:.62rem;font-weight:700;color:#9a9388;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .25rem}.node-detail-risks[data-v-c238fae4],.node-detail-people[data-v-c238fae4]{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #f0ede6}.node-risk-list[data-v-c238fae4],.node-people-list[data-v-c238fae4]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.2rem}.node-risk-list li[data-v-c238fae4]{font-size:.72rem;color:#92400e;background:#fef3c7;border-radius:4px;padding:.15rem .4rem}.node-people-list li[data-v-c238fae4]{font-size:.72rem;color:#181511;background:#fbfaf7;border:1px solid #ddd7cd;border-radius:4px;padding:.15rem .4rem}.node-detail-link[data-v-c238fae4]{display:block;margin-top:.65rem;padding-top:.55rem;border:none;border-top:1px solid #f0ede6;background:none;font-size:.78rem;font-weight:600;color:#126b5f;text-decoration:none;cursor:pointer;transition:opacity .12s}.node-detail-link[data-v-c238fae4]:hover{opacity:.75;text-decoration:underline}.timereport-section[data-v-c238fae4]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;border-top:1px solid #f0ede6}.timereport-state[data-v-c238fae4]{font-size:.8rem;color:#9a9388}.timereport-state--empty[data-v-c238fae4]{font-style:italic}.timereport-months[data-v-c238fae4]{display:flex;flex-direction:column;gap:.25rem}.timereport-month[data-v-c238fae4]{border:1px solid #ede9e2;border-radius:8px;overflow:hidden}.month-header[data-v-c238fae4]{width:100%;display:flex;align-items:center;gap:.4rem;padding:.5rem .6rem;border:0;background:#fbfaf7;cursor:pointer;text-align:left;transition:background .1s}.month-header[data-v-c238fae4]:hover{background:#f3f0ea}.month-label[data-v-c238fae4]{flex:1;font-size:.8rem;font-weight:700;color:#181511}.month-hours[data-v-c238fae4]{font-size:.78rem;font-weight:600;color:var(--node-accent)}.month-chevron[data-v-c238fae4]{font-size:1rem;color:#9a9388;line-height:1;transition:transform .15s ease;display:inline-block}.month-chevron.open[data-v-c238fae4]{transform:rotate(90deg)}.month-entries[data-v-c238fae4]{display:flex;flex-direction:column;gap:0;border-top:1px solid #ede9e2}.month-entry[data-v-c238fae4]{padding:.5rem .6rem;border-bottom:1px solid #f5f2ec}.month-entry[data-v-c238fae4]:last-child{border-bottom:0}.entry-meta[data-v-c238fae4]{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.2rem}.entry-date[data-v-c238fae4]{font-size:.72rem;color:#9a9388}.entry-hours[data-v-c238fae4]{font-size:.75rem;font-weight:700;color:#181511;white-space:nowrap}.entry-note[data-v-c238fae4]{font-size:.78rem;color:#4a4540;margin:0;line-height:1.4}.contract-node-detail[data-v-52a1f5fc]{--node-accent: #126b5f;position:absolute;top:0;right:0;bottom:0;width:300px;background:#fff;border-left:1px solid #ddd7cd;padding:1.25rem 1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;z-index:10}.detail-close[data-v-52a1f5fc]{position:absolute;top:.75rem;right:.75rem;width:1.75rem;height:1.75rem;border:0;border-radius:6px;background:#f0ede6;color:#746f67;font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.detail-close[data-v-52a1f5fc]:hover{background:#e5e0d8}.detail-badge[data-v-52a1f5fc]{display:inline-block;padding:.2rem .6rem;border-radius:999px;background:var(--node-accent);color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;width:fit-content}.detail-title[data-v-52a1f5fc]{font-size:.95rem;font-weight:700;color:#181511;margin:0;padding-right:1.5rem;line-height:1.3}.detail-sub[data-v-52a1f5fc]{font-size:.8rem;color:#746f67;margin:0}.detail-fields[data-v-52a1f5fc]{display:flex;flex-direction:column;gap:.5rem;margin:0}.detail-row[data-v-52a1f5fc]{display:flex;flex-direction:column;gap:.18rem}.detail-row dt[data-v-52a1f5fc]{font-size:.68rem;font-weight:700;color:#9a9388;text-transform:uppercase;letter-spacing:.05em}.detail-row dd[data-v-52a1f5fc]{font-size:.84rem;color:#181511;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;line-height:1.35}.detail-risks[data-v-52a1f5fc]{display:flex;flex-direction:column;gap:.35rem;padding-top:.5rem;border-top:1px solid #f0ede6}.detail-risk-list[data-v-52a1f5fc]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}.detail-risk-list li[data-v-52a1f5fc]{font-size:.78rem;color:#92400e;background:#fef3c7;border-radius:5px;padding:.2rem .5rem}.detail-tag[data-v-52a1f5fc]{font-size:.65rem;font-weight:700;padding:.1rem .4rem;border-radius:4px;background:#e7f2ef;color:#126b5f}.review-chip[data-v-52a1f5fc]{font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}.review-chip--approved[data-v-52a1f5fc]{background:#d1fae5;color:#065f46}.review-chip--pending_review[data-v-52a1f5fc]{background:#fef3c7;color:#92400e}.review-chip--approved_by_extraction[data-v-52a1f5fc]{background:#dcfce7;color:#166534}.review-chip--rejected[data-v-52a1f5fc]{background:#fee2e2;color:#991b1b}.review-chip--duplicate_deleted[data-v-52a1f5fc]{background:#f3f4f6;color:#374151}.review-chip--failed[data-v-52a1f5fc]{background:#fee2e2;color:#991b1b}.detail-actions[data-v-52a1f5fc]{display:flex;flex-direction:column;gap:.5rem;margin-top:auto;padding-top:.75rem;border-top:1px solid #f0ede6}.detail-btn[data-v-52a1f5fc]{width:100%;padding:.55rem .75rem;border:0;border-radius:8px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:opacity .12s}.detail-btn[data-v-52a1f5fc]:disabled{opacity:.5;cursor:default}.detail-btn--primary[data-v-52a1f5fc]{background:var(--node-accent);color:#fff}.detail-btn--primary[data-v-52a1f5fc]:hover:not(:disabled){opacity:.88}.detail-btn--danger[data-v-52a1f5fc]{background:#fee2e2;color:#991b1b}.detail-btn--danger[data-v-52a1f5fc]:hover:not(:disabled){background:#fecaca}.detail-btn--ghost[data-v-52a1f5fc]{background:#f0ede6;color:#746f67}.detail-btn--ghost[data-v-52a1f5fc]:hover{background:#e5e0d8}.detail-btn--reprocess[data-v-52a1f5fc]{background:#dbeafe;color:#1e40af}.detail-btn--reprocess[data-v-52a1f5fc]:hover:not(:disabled){background:#bfdbfe}.detail-ok[data-v-52a1f5fc]{font-size:.75rem;color:#065f46;margin:0;font-weight:600}.detail-confirm[data-v-52a1f5fc]{display:flex;flex-direction:column;gap:.4rem}.detail-confirm-label[data-v-52a1f5fc]{font-size:.78rem;color:#991b1b;font-weight:600}.detail-err[data-v-52a1f5fc]{font-size:.75rem;color:#991b1b;margin:0}.detail-section-label[data-v-52a1f5fc]{font-size:.7rem;font-weight:700;color:#9a9388;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .4rem}.detail-people-list[data-v-52a1f5fc]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.detail-people-list li[data-v-52a1f5fc]{font-size:.82rem;color:#181511;padding:.3rem .5rem;background:#fbfaf7;border:1px solid #ddd7cd;border-radius:6px}.detail-empty[data-v-52a1f5fc]{font-size:.8rem;color:#9a9388;margin:0;font-style:italic}.detail-panel-enter-active[data-v-52a1f5fc],.detail-panel-leave-active[data-v-52a1f5fc]{transition:transform .22s ease,opacity .22s ease}.detail-panel-enter-from[data-v-52a1f5fc],.detail-panel-leave-to[data-v-52a1f5fc]{transform:translate(100%);opacity:0}.modal-backdrop[data-v-cfd4db20]{position:fixed;top:0;right:0;bottom:0;left:0;background:#18151173;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-card[data-v-cfd4db20]{background:#fff;border-radius:18px;padding:1.75rem;width:min(420px,calc(100vw - 2rem));display:flex;flex-direction:column;gap:1rem;box-shadow:0 24px 64px #18151138}.modal-title[data-v-cfd4db20]{font-size:1rem;font-weight:700;color:#181511;margin:0}.modal-field[data-v-cfd4db20]{display:flex;flex-direction:column;gap:.4rem}.modal-label[data-v-cfd4db20]{font-size:.72rem;font-weight:700;color:#9a9388;text-transform:uppercase;letter-spacing:.04em}.modal-select[data-v-cfd4db20],.modal-input[data-v-cfd4db20]{width:100%;padding:.6rem .75rem;border:1px solid #ddd7cd;border-radius:8px;background:#fbfaf7;color:#181511;font:inherit;font-size:.88rem}.modal-select[data-v-cfd4db20]:focus,.modal-input[data-v-cfd4db20]:focus{outline:2px solid #126b5f;outline-offset:1px}.modal-err[data-v-cfd4db20]{font-size:.78rem;color:#991b1b;margin:0}.modal-actions[data-v-cfd4db20]{display:flex;gap:.6rem;margin-top:.25rem}.modal-btn[data-v-cfd4db20]{flex:1;padding:.6rem .75rem;border:0;border-radius:9px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;transition:opacity .12s}.modal-btn[data-v-cfd4db20]:disabled{opacity:.45;cursor:default}.modal-btn--primary[data-v-cfd4db20]{background:#126b5f;color:#fff}.modal-btn--primary[data-v-cfd4db20]:hover:not(:disabled){opacity:.88}.modal-btn--ghost[data-v-cfd4db20]{background:#f0ede6;color:#746f67}.modal-btn--ghost[data-v-cfd4db20]:hover{background:#e5e0d8}.accordion--graph[data-v-ebb0e191]{grid-column:1 / -1;background:#ffffffeb;border:1px solid #ddd7cd;border-radius:12px;overflow:hidden}.accordion-trigger[data-v-ebb0e191]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:1rem 1.05rem;border:0;background:transparent;color:#181511;font:inherit;cursor:pointer}.accordion-label[data-v-ebb0e191]{display:flex;align-items:center;gap:.62rem;min-width:0;font-weight:700}.accordion-label svg[data-v-ebb0e191]{color:#126b5f;flex-shrink:0}.badge-count[data-v-ebb0e191]{padding:.18rem .5rem;border-radius:999px;background:#f0ede6;color:#746f67;font-size:.74rem;font-weight:600}.chevron[data-v-ebb0e191]{width:1rem;height:1rem;color:#9a9388;transition:transform .15s ease;flex-shrink:0}.accordion--graph.open .chevron[data-v-ebb0e191]{transform:rotate(180deg)}.accordion-panel[data-v-ebb0e191]{display:none;border-top:1px solid #ddd7cd}.accordion--graph.open .accordion-panel[data-v-ebb0e191]{display:block}.graph-panel-inner[data-v-ebb0e191]{padding:0!important}.graph-body[data-v-ebb0e191]{position:relative;overflow:hidden}.graph-canvas[data-v-ebb0e191]{width:100%;height:480px;background:#fbfaf7;display:block}.graph-controls[data-v-ebb0e191]{position:absolute;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.35rem;z-index:5}.ctrl-btn[data-v-ebb0e191]{width:2rem;height:2rem;border:1px solid #ddd7cd;border-radius:7px;background:#ffffffe6;color:#746f67;font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .12s,color .12s}.ctrl-btn[data-v-ebb0e191]:hover{background:#e7f2ef;color:#126b5f}.graph-breadcrumb[data-v-ebb0e191]{position:absolute;top:.75rem;left:.75rem;z-index:5}.breadcrumb-btn[data-v-ebb0e191]{padding:.35rem .7rem;border:1px solid #ddd7cd;border-radius:7px;background:#ffffffe6;color:#746f67;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .12s,color .12s}.breadcrumb-btn[data-v-ebb0e191]:hover{background:#e7f2ef;color:#126b5f}.graph-overlay[data-v-ebb0e191]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#fbfaf7d1;z-index:8}.graph-state-card[data-v-ebb0e191]{background:#fff;border:1px solid #ddd7cd;border-radius:14px;padding:1.5rem 2rem;text-align:center;max-width:320px;box-shadow:0 4px 24px #18151114}.graph-state-kicker[data-v-ebb0e191]{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#126b5f;margin:0 0 .4rem}.graph-state-copy[data-v-ebb0e191]{font-size:.88rem;color:#746f67;margin:0 0 .75rem;line-height:1.45}.graph-state-btn[data-v-ebb0e191]{padding:.45rem 1rem;border:1px solid #b7d2cc;border-radius:8px;background:transparent;color:#126b5f;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .12s}.graph-state-btn[data-v-ebb0e191]:hover{background:#e7f2ef}.contracts-page[data-v-5618fa72]{--ink: #181511;--muted: #746f67;--line: #ddd7cd;--paper: #fbfaf7;--panel: #ffffff;--accent: #126b5f;--accent-soft: #e7f2ef;--danger: #991b1b;display:flex;flex-direction:column;gap:1rem;padding-bottom:2rem;color:var(--ink)}.chat-shell[data-v-5618fa72]{min-height:72vh;display:grid;grid-template-rows:auto auto 1fr auto;background:#ffffffeb;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 55px #1f1c161c;overflow:hidden}.chat-topbar[data-v-5618fa72],.chat-context[data-v-5618fa72],.composer-wrap[data-v-5618fa72]{background:#fbfaf7e6}.chat-topbar[data-v-5618fa72]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.identity[data-v-5618fa72],.chat-context-inner[data-v-5618fa72],.accordion-label[data-v-5618fa72],.contract-row[data-v-5618fa72],.ref-chip[data-v-5618fa72],.icon-btn[data-v-5618fa72],.send-btn[data-v-5618fa72]{display:flex;align-items:center}.identity[data-v-5618fa72]{gap:.75rem;min-width:0}.mark[data-v-5618fa72]{width:2.15rem;height:2.15rem;display:grid;place-items:center;border:1px solid #b7d2cc;border-radius:8px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}svg[data-v-5618fa72]{width:1rem;height:1rem;stroke-width:1.8}.chat-heading[data-v-5618fa72]{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:600;line-height:1.1;letter-spacing:0}.chat-subheading[data-v-5618fa72]{display:block;margin-top:.18rem;color:var(--muted);font-size:.82rem}.icon-btn[data-v-5618fa72]{width:2.25rem;height:2.25rem;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);cursor:pointer}.icon-btn[data-v-5618fa72]:hover{color:var(--ink);border-color:#c9c0b3}.chat-context[data-v-5618fa72]{justify-content:space-between;gap:.8rem;padding:.45rem 1.25rem;border-bottom:1px solid var(--line)}.chat-context-inner[data-v-5618fa72]{gap:.45rem;min-width:0;color:var(--accent);font-size:.82rem;font-weight:600}.chat-context-name[data-v-5618fa72]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-context-label[data-v-5618fa72]{color:var(--muted);font-weight:500}.chat-context-dismiss[data-v-5618fa72]{display:grid;place-items:center;width:1.65rem;height:1.65rem;border:0;background:transparent;color:var(--muted);cursor:pointer}.chat-context-open[data-v-5618fa72],.row-action-btn[data-v-5618fa72]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);cursor:pointer}.chat-context-open[data-v-5618fa72]{width:1.9rem;height:1.9rem}.row-action-btn[data-v-5618fa72]{width:1.9rem;height:1.9rem;flex-shrink:0}.chat-context-open[data-v-5618fa72]:hover,.row-action-btn[data-v-5618fa72]:hover{color:var(--accent);border-color:#b7d2cc;background:#f6fbf9}.conversation[data-v-5618fa72]{overflow:auto;padding:2rem 1.5rem 1.5rem;scroll-behavior:smooth}.thread[data-v-5618fa72]{width:min(860px,100%);margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.welcome[data-v-5618fa72]{width:min(720px,100%);margin:0 auto .5rem;text-align:center}.welcome h1[data-v-5618fa72]{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.35rem);line-height:1.04;font-weight:500;letter-spacing:0}.welcome p[data-v-5618fa72]{margin:.85rem auto 0;max-width:34rem;color:var(--muted);line-height:1.55}.chat-suggestions[data-v-5618fa72]{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:1.35rem}.chat-suggestions button[data-v-5618fa72]{min-height:3.6rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:.82rem;line-height:1.35;text-align:left;cursor:pointer}.chat-suggestions button[data-v-5618fa72]:hover{border-color:#b8d2ca;background:#f6fbf9}.message[data-v-5618fa72]{display:grid;grid-template-columns:2.15rem minmax(0,1fr);gap:.8rem}.message.user[data-v-5618fa72]{grid-template-columns:minmax(0,1fr) 2.15rem}.avatar[data-v-5618fa72]{width:2.15rem;height:2.15rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#f0ede6;color:var(--muted);font-size:.72rem;font-weight:700}.assistant .avatar[data-v-5618fa72]{background:var(--accent-soft);border-color:#b7d2cc;color:var(--accent)}.bubble[data-v-5618fa72]{max-width:45rem;line-height:1.62;color:#2a251f;white-space:pre-wrap}.user .message-body[data-v-5618fa72]{justify-self:end}.user .bubble[data-v-5618fa72]{padding:.75rem .95rem;border:1px solid var(--line);border-radius:12px;background:#f0ede6}.bubble--error[data-v-5618fa72]{padding:.75rem .95rem;border:1px solid #fecaca;border-radius:12px;background:#fee2e2;color:var(--danger)}.refs[data-v-5618fa72]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.ref-chip[data-v-5618fa72]{gap:.42rem;max-width:17.5rem;padding:.42rem .62rem;border:1px solid #b7d2cc;border-radius:7px;background:#f6fbf9;color:var(--accent);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.ref-chip span[data-v-5618fa72]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-tag[data-v-5618fa72]{display:inline-block;margin-top:.5rem;color:#9a9388;font-size:.75rem}.typing-dots[data-v-5618fa72]{display:flex;align-items:center;gap:.3rem;padding-top:.55rem}.typing-dots span[data-v-5618fa72]{width:.35rem;height:.35rem;border-radius:999px;background:#9a9388;animation:dot-bounce-5618fa72 1.2s infinite ease-in-out}.typing-dots span[data-v-5618fa72]:nth-child(2){animation-delay:.2s}.typing-dots span[data-v-5618fa72]:nth-child(3){animation-delay:.4s}@keyframes dot-bounce-5618fa72{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-.32rem)}}.composer-wrap[data-v-5618fa72]{padding:1rem 1.25rem 1.1rem;border-top:1px solid var(--line)}.composer[data-v-5618fa72]{width:min(860px,100%);margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:.65rem;align-items:end;padding:.62rem;border:1px solid #cfc7bb;border-radius:14px;background:#fff;box-shadow:0 8px 24px #1f1c1614}textarea[data-v-5618fa72]{min-height:3rem;max-height:9.25rem;resize:none;border:0;outline:0;padding:.72rem .62rem;color:var(--ink);font:inherit;font-size:.95rem;line-height:1.45}textarea[data-v-5618fa72]::placeholder{color:#a19a90}.send-btn[data-v-5618fa72]{width:2.65rem;height:2.65rem;justify-content:center;border:0;border-radius:10px;background:var(--accent);color:#fff;cursor:pointer}.send-btn[data-v-5618fa72]:disabled{background:#c8c1b7;cursor:default}.compose-hint[data-v-5618fa72]{width:min(860px,100%);margin:.5rem auto 0;color:#9a9388;font-size:.75rem}.workspace[data-v-5618fa72]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.attention-strip[data-v-5618fa72]{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding:.85rem 1rem;border:1px solid #d7cdbf;border-radius:12px;background:#fffaf0}.attention-strip strong[data-v-5618fa72]{display:block;margin-top:.1rem;font-size:.95rem}.attention-kicker[data-v-5618fa72]{color:#8a5f11;font-size:.72rem;font-weight:800;text-transform:uppercase}.attention-items[data-v-5618fa72]{display:flex;gap:.5rem;overflow:auto}.attention-items button[data-v-5618fa72]{min-width:11rem;max-width:16rem;padding:.55rem .65rem;border:1px solid #e8d6aa;border-radius:8px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.attention-items span[data-v-5618fa72],.attention-items small[data-v-5618fa72]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attention-items span[data-v-5618fa72]{font-size:.8rem;font-weight:700}.attention-items small[data-v-5618fa72]{margin-top:.12rem;color:#8a5f11;font-size:.72rem}.workspace-right[data-v-5618fa72]{display:none}.accordion[data-v-5618fa72]{background:#ffffffeb;border:1px solid var(--line);border-radius:12px;overflow:hidden}.accordion-trigger[data-v-5618fa72]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:1rem 1.05rem;border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.accordion-label[data-v-5618fa72]{gap:.62rem;min-width:0;font-weight:700}.accordion-label svg[data-v-5618fa72]{color:var(--accent);flex-shrink:0}.badge-count[data-v-5618fa72]{padding:.18rem .5rem;border-radius:999px;background:#f0ede6;color:var(--muted);font-size:.74rem}.chevron[data-v-5618fa72]{width:1rem;height:1rem;color:#9a9388;transition:transform .15s ease}.accordion.open .chevron[data-v-5618fa72]{transform:rotate(180deg)}.accordion-panel[data-v-5618fa72]{display:none;border-top:1px solid var(--line)}.accordion.open .accordion-panel[data-v-5618fa72]{display:block}.accordion-panel-inner[data-v-5618fa72]{padding:.85rem}.panel-state[data-v-5618fa72]{display:grid;min-height:7rem;place-items:center;color:var(--muted)}.contract-list[data-v-5618fa72]{display:grid;gap:.5rem;max-height:22rem;overflow:auto}.contract-item[data-v-5618fa72]{display:grid;gap:0}.contract-row[data-v-5618fa72]{gap:.7rem;padding:.62rem;border:1px solid #ebe5dc;border-radius:8px;background:var(--paper)}.contract-item--review .contract-row[data-v-5618fa72]{border-color:#ead8aa;border-bottom-color:transparent;border-radius:8px 8px 0 0;background:#fffdf6}.contract-row--processing[data-v-5618fa72]{background:linear-gradient(90deg,#fbfaf7,#f2faf7,#fbfaf7);background-size:220% 100%;animation:row-progress-5618fa72 1.8s infinite linear}.contract-row--clickable[data-v-5618fa72]{cursor:pointer}.contract-row--clickable[data-v-5618fa72]:hover,.contract-row--selected[data-v-5618fa72]{border-color:#b7d2cc;background:#f6fbf9}.contract-row-icon[data-v-5618fa72]{width:2rem;height:2rem;display:grid;place-items:center;color:var(--accent);flex-shrink:0}.contract-row-icon svg[data-v-5618fa72]{width:1.15rem;height:1.15rem}.contract-row-body[data-v-5618fa72]{min-width:0;flex:1}.contract-row-name[data-v-5618fa72]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:.86rem}.contract-row-meta[data-v-5618fa72]{margin-top:.16rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.76rem}.contract-row-payment[data-v-5618fa72]{margin-top:.18rem;color:var(--accent);font-size:.74rem;font-weight:700}.contract-row-relation[data-v-5618fa72]{margin-top:.16rem;color:#8a5f11;font-size:.72rem;font-weight:700}.contract-inline-link[data-v-5618fa72]{margin-top:.34rem;padding:0;border:0;background:transparent;color:var(--accent);font:inherit;font-size:.76rem;font-weight:700;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:.14rem}.contract-inline-link[data-v-5618fa72]:hover{color:#0e544a}.contract-row-end[data-v-5618fa72]{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.badge[data-v-5618fa72],.btn-ghost-sm[data-v-5618fa72]{border-radius:999px;font-size:.72rem;font-weight:700}.badge[data-v-5618fa72]{padding:.2rem .48rem}.badge--blue[data-v-5618fa72]{background:#dbeafe;color:#1d4ed8}.badge--amber[data-v-5618fa72]{background:#fef3c7;color:#92400e}.badge--red[data-v-5618fa72]{background:#fee2e2;color:#991b1b}.btn-ghost-sm[data-v-5618fa72]{border:1px solid var(--line);background:#fff;color:var(--muted);padding:.25rem .55rem;cursor:pointer}.btn-ghost-sm--danger[data-v-5618fa72]{border-color:#fecaca;color:var(--danger)}.btn-ghost-sm[data-v-5618fa72]:disabled{opacity:.55;cursor:default}.spin-icon[data-v-5618fa72]{animation:spin-5618fa72 .9s linear infinite}.review-panel[data-v-5618fa72]{padding:.8rem .85rem .85rem;border:1px solid #ead8aa;border-top:0;border-radius:0 0 8px 8px;background:#fffaf0}.review-panel-head[data-v-5618fa72]{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start}.review-panel-head strong[data-v-5618fa72]{display:block;font-size:.84rem}.review-panel-head p[data-v-5618fa72]{margin:.15rem 0 0;color:#746f67;font-size:.76rem;line-height:1.35}.review-panel-head a[data-v-5618fa72]{display:none}.review-panel-state[data-v-5618fa72],.candidate-kicker[data-v-5618fa72]{color:#8a5f11;font-size:.68rem;font-weight:900;text-transform:uppercase}.review-panel-state[data-v-5618fa72]{flex-shrink:0;padding-top:.08rem}.candidate-list[data-v-5618fa72]{display:grid;gap:.4rem;margin-top:.65rem}.candidate-kicker[data-v-5618fa72]{margin-bottom:.05rem}.candidate[data-v-5618fa72]{padding:.52rem .6rem;border:1px solid #ead8aa;border-radius:8px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.candidate--selected[data-v-5618fa72]{border-color:var(--accent);background:#f6fbf9}.candidate span[data-v-5618fa72],.candidate small[data-v-5618fa72]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate span[data-v-5618fa72]{font-size:.78rem;font-weight:800}.candidate small[data-v-5618fa72]{margin-top:.12rem;color:#746f67;font-size:.7rem}.review-actions[data-v-5618fa72]{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.65rem}.review-action-hint[data-v-5618fa72]{margin:.55rem 0 0;color:#746f67;font-size:.72rem;line-height:1.35}@keyframes spin-5618fa72{to{transform:rotate(360deg)}}@keyframes row-progress-5618fa72{to{background-position:-220% 0}}.dropzone[data-v-5618fa72]{min-height:9rem;display:grid;place-items:center;border:1px dashed #c5baad;border-radius:10px;background:var(--paper);color:var(--muted);text-align:center;cursor:pointer}.dropzone--over[data-v-5618fa72]{border-color:var(--accent);background:var(--accent-soft)}.dropzone svg[data-v-5618fa72]{width:1.5rem;height:1.5rem;color:var(--accent)}.dropzone-title[data-v-5618fa72]{margin:.45rem 0 0;color:var(--ink);font-weight:700}.dropzone-hint[data-v-5618fa72]{margin:.15rem 0 0;font-size:.82rem}.dropzone-tags[data-v-5618fa72]{display:flex;justify-content:center;gap:.35rem;margin-top:.55rem}.dropzone-tags span[data-v-5618fa72]{padding:.18rem .45rem;border-radius:999px;background:#f0ede6;color:var(--muted);font-size:.72rem;font-weight:700}.upload-status[data-v-5618fa72],.upload-err[data-v-5618fa72]{margin-top:.7rem}.upload-status[data-v-5618fa72]{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.82rem}.upload-bar[data-v-5618fa72]{flex:1;height:.35rem;overflow:hidden;border-radius:999px;background:#f0ede6}.upload-fill[data-v-5618fa72]{width:45%;height:100%;border-radius:inherit;background:var(--accent);animation:upload-pulse-5618fa72 1.2s infinite ease-in-out}@keyframes upload-pulse-5618fa72{0%{transform:translate(-100%)}to{transform:translate(230%)}}.upload-err[data-v-5618fa72]{display:flex;align-items:center;justify-content:space-between;gap:.8rem;color:var(--danger);font-size:.82rem}@media (max-width: 780px){.chat-shell[data-v-5618fa72]{min-height:68vh;border-radius:13px}.chat-subheading[data-v-5618fa72],.compose-hint[data-v-5618fa72]{display:none}.conversation[data-v-5618fa72]{padding:1.5rem .9rem 1.1rem}.chat-suggestions[data-v-5618fa72],.workspace[data-v-5618fa72],.attention-strip[data-v-5618fa72]{grid-template-columns:1fr}.attention-items[data-v-5618fa72]{flex-direction:column}.attention-items button[data-v-5618fa72]{max-width:none;width:100%}.message[data-v-5618fa72],.message.user[data-v-5618fa72]{grid-template-columns:2rem minmax(0,1fr)}.message.user .avatar[data-v-5618fa72]{grid-column:1;grid-row:1}.message.user .message-body[data-v-5618fa72]{grid-column:2;justify-self:start}}.hr-page[data-v-28c94c60]{--ink: #181511;--muted: #746f67;--line: #ddd7cd;--paper: #fbfaf7;--panel: #ffffff;--accent: #126b5f;--accent-soft: #e7f2ef;--danger: #991b1b;display:flex;flex-direction:column;gap:1rem;padding-bottom:2rem;color:var(--ink)}.chat-shell[data-v-28c94c60]{min-height:82vh;display:grid;grid-template-rows:auto 1fr auto;background:#ffffffeb;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 55px #1f1c161c;overflow:hidden}.chat-topbar[data-v-28c94c60],.composer-wrap[data-v-28c94c60]{background:#fbfaf7e6}.chat-topbar[data-v-28c94c60]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.identity[data-v-28c94c60]{display:flex;align-items:center;gap:.75rem;min-width:0}.mark[data-v-28c94c60]{width:2.15rem;height:2.15rem;display:grid;place-items:center;border:1px solid #b7d2cc;border-radius:8px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}svg[data-v-28c94c60]{width:1rem;height:1rem;stroke-width:1.8}.chat-heading[data-v-28c94c60]{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:600;line-height:1.1}.chat-subheading[data-v-28c94c60]{display:block;margin-top:.18rem;color:var(--muted);font-size:.82rem}.icon-btn[data-v-28c94c60]{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);cursor:pointer}.icon-btn[data-v-28c94c60]:hover{color:var(--ink);border-color:#c9c0b3}.conversation[data-v-28c94c60]{overflow:auto;padding:2rem 1.5rem 1.5rem;scroll-behavior:smooth}.thread[data-v-28c94c60]{width:min(860px,100%);margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.welcome[data-v-28c94c60]{width:min(720px,100%);margin:0 auto .5rem;text-align:center}.welcome h1[data-v-28c94c60]{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.35rem);line-height:1.04;font-weight:500}.welcome p[data-v-28c94c60]{margin:.85rem auto 0;max-width:34rem;color:var(--muted);line-height:1.55}.chat-suggestions[data-v-28c94c60]{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:1.35rem}.chat-suggestions button[data-v-28c94c60]{min-height:3.6rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:.82rem;line-height:1.35;text-align:left;cursor:pointer}.chat-suggestions button[data-v-28c94c60]:hover{border-color:#b8d2ca;background:#f6fbf9}.message[data-v-28c94c60]{display:grid;grid-template-columns:2.15rem minmax(0,1fr);gap:.8rem}.message.user[data-v-28c94c60]{grid-template-columns:minmax(0,1fr) 2.15rem}.avatar[data-v-28c94c60]{width:2.15rem;height:2.15rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#f0ede6;color:var(--muted);font-size:.72rem;font-weight:700}.assistant .avatar[data-v-28c94c60]{background:var(--accent-soft);border-color:#b7d2cc;color:var(--accent)}.bubble[data-v-28c94c60]{max-width:45rem;line-height:1.62;color:#2a251f;white-space:pre-wrap}.user .message-body[data-v-28c94c60]{justify-self:end}.user .bubble[data-v-28c94c60]{padding:.75rem .95rem;border:1px solid var(--line);border-radius:12px;background:#f0ede6}.bubble--error[data-v-28c94c60]{padding:.75rem .95rem;border:1px solid #fecaca;border-radius:12px;background:#fee2e2;color:var(--danger)}.typing-dots[data-v-28c94c60]{display:flex;align-items:center;gap:.3rem;padding-top:.55rem}.typing-dots span[data-v-28c94c60]{width:.35rem;height:.35rem;border-radius:999px;background:#9a9388;animation:dot-bounce-28c94c60 1.2s infinite ease-in-out}.typing-dots span[data-v-28c94c60]:nth-child(2){animation-delay:.2s}.typing-dots span[data-v-28c94c60]:nth-child(3){animation-delay:.4s}@keyframes dot-bounce-28c94c60{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-.32rem)}}.composer-wrap[data-v-28c94c60]{padding:1rem 1.25rem 1.1rem;border-top:1px solid var(--line)}.composer[data-v-28c94c60]{width:min(860px,100%);margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:.65rem;align-items:end;padding:.62rem;border:1px solid #cfc7bb;border-radius:14px;background:#fff;box-shadow:0 8px 24px #1f1c1614}textarea[data-v-28c94c60]{min-height:3rem;max-height:9.25rem;resize:none;border:0;outline:0;padding:.72rem .62rem;color:var(--ink);font:inherit;font-size:.95rem;line-height:1.45}textarea[data-v-28c94c60]::placeholder{color:#a19a90}.send-btn[data-v-28c94c60]{display:flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;border:0;border-radius:10px;background:var(--accent);color:#fff;cursor:pointer}.send-btn[data-v-28c94c60]:disabled{background:#c8c1b7;cursor:default}.compose-hint[data-v-28c94c60]{width:min(860px,100%);margin:.5rem auto 0;color:#9a9388;font-size:.75rem}@media (max-width: 780px){.chat-shell[data-v-28c94c60]{min-height:78vh;border-radius:13px}.chat-subheading[data-v-28c94c60],.compose-hint[data-v-28c94c60]{display:none}.conversation[data-v-28c94c60]{padding:1.5rem .9rem 1.1rem}.chat-suggestions[data-v-28c94c60]{grid-template-columns:1fr}.message[data-v-28c94c60],.message.user[data-v-28c94c60]{grid-template-columns:2rem minmax(0,1fr)}.message.user .avatar[data-v-28c94c60]{grid-column:1;grid-row:1}.message.user .message-body[data-v-28c94c60]{grid-column:2;justify-self:start}}.forecast-page[data-v-a90836bb]{--ink: #181511;--muted: #746f67;--line: #ddd7cd;--paper: #fbfaf7;--panel: #ffffff;--user: #111827;--user-ink: #f9fafb;--assistant: #f4efe5;--accent: #1f6b5f;--accent-soft: rgba(31, 107, 95, .12);min-height:100%}.forecast-page[data-v-a90836bb] *{box-sizing:border-box}.chat-shell[data-v-a90836bb]{display:flex;min-height:calc(100vh - 4rem);flex-direction:column;gap:1rem;background:linear-gradient(180deg,#fffdf8,#f6f1e7);padding:1.25rem}.chat-topbar[data-v-a90836bb],.conversation[data-v-a90836bb],.composer-wrap[data-v-a90836bb]{width:min(100%,980px);margin:0 auto}.chat-topbar[data-v-a90836bb]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.identity[data-v-a90836bb]{display:flex;align-items:center;gap:.9rem}.mark[data-v-a90836bb],.avatar[data-v-a90836bb],.send-btn[data-v-a90836bb],.icon-btn[data-v-a90836bb]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.mark[data-v-a90836bb]{width:2.9rem;height:2.9rem;border-radius:.9rem;background:var(--accent-soft);color:var(--accent)}.mark svg[data-v-a90836bb]{width:1.35rem;height:1.35rem;stroke-width:1.8}.chat-heading[data-v-a90836bb]{margin:0;color:var(--ink);font-size:1.05rem;font-weight:650}.chat-subheading[data-v-a90836bb]{display:block;margin-top:.2rem;color:var(--muted);font-size:.9rem}.icon-btn[data-v-a90836bb],.send-btn[data-v-a90836bb]{width:2.8rem;height:2.8rem;border:1px solid var(--line);border-radius:.9rem;background:#ffffffe0;color:var(--ink);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.icon-btn[data-v-a90836bb]:hover,.send-btn[data-v-a90836bb]:hover:not(:disabled){transform:translateY(-1px);border-color:#1f6b5f59}.icon-btn svg[data-v-a90836bb],.send-btn svg[data-v-a90836bb]{width:1.15rem;height:1.15rem;stroke-width:1.9}.conversation[data-v-a90836bb]{flex:1;overflow:auto;padding-right:.2rem}.thread[data-v-a90836bb]{display:flex;min-height:100%;flex-direction:column;justify-content:flex-end;gap:1rem;padding-bottom:.25rem}.welcome[data-v-a90836bb]{display:grid;gap:.9rem;padding:2rem 0 1.2rem}.welcome h1[data-v-a90836bb]{margin:0;color:var(--ink);font-size:clamp(1.9rem,5vw,3.3rem);line-height:1.04}.welcome p[data-v-a90836bb]{max-width:44rem;margin:0;color:var(--muted);font-size:1rem;line-height:1.6}.chat-suggestions[data-v-a90836bb]{display:flex;flex-wrap:wrap;gap:.65rem}.chat-suggestions button[data-v-a90836bb]{border:1px solid rgba(24,21,17,.1);border-radius:999px;background:#ffffffdb;color:var(--ink);padding:.72rem 1rem;font:inherit;cursor:pointer}.message[data-v-a90836bb]{display:flex;align-items:flex-end;gap:.75rem}.message.user[data-v-a90836bb]{justify-content:flex-end}.avatar[data-v-a90836bb]{width:2.5rem;height:2.5rem;border-radius:.9rem;background:#18151114;color:var(--ink);font-size:.78rem;font-weight:700;letter-spacing:0}.message-body[data-v-a90836bb]{max-width:min(46rem,calc(100% - 4.5rem));display:grid;gap:.45rem}.bubble[data-v-a90836bb]{border-radius:1.1rem;background:var(--assistant);color:var(--ink);padding:.95rem 1rem;white-space:pre-wrap;line-height:1.55}.message.user .bubble[data-v-a90836bb]{background:var(--user);color:var(--user-ink)}.bubble--error[data-v-a90836bb]{background:#fff1f1;color:#8a2121}.typing-dots[data-v-a90836bb]{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;background:var(--assistant);padding:.9rem 1rem}.typing-dots span[data-v-a90836bb]{width:.45rem;height:.45rem;border-radius:999px;background:#1815116b;animation:pulse-a90836bb .9s ease-in-out infinite}.typing-dots span[data-v-a90836bb]:nth-child(2){animation-delay:.12s}.typing-dots span[data-v-a90836bb]:nth-child(3){animation-delay:.24s}.composer-wrap[data-v-a90836bb]{display:grid;gap:.65rem;padding-top:.5rem}.composer[data-v-a90836bb]{display:flex;align-items:flex-end;gap:.85rem;border:1px solid rgba(24,21,17,.08);border-radius:1.25rem;background:#ffffffeb;padding:.85rem}.composer textarea[data-v-a90836bb]{width:100%;min-height:1.5rem;max-height:9.25rem;resize:none;border:0;background:transparent;color:var(--ink);font:inherit;line-height:1.5;outline:none}.composer textarea[data-v-a90836bb]::placeholder,.compose-hint[data-v-a90836bb]{color:var(--muted)}.send-btn[data-v-a90836bb]{background:var(--accent);border-color:transparent;color:#f8fbfa}.send-btn[data-v-a90836bb]:disabled{cursor:not-allowed;opacity:.55}.compose-hint[data-v-a90836bb]{font-size:.83rem}@keyframes pulse-a90836bb{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-3px);opacity:1}}@media (max-width: 720px){.chat-shell[data-v-a90836bb]{min-height:calc(100vh - 3.25rem);padding:1rem .9rem}.message-body[data-v-a90836bb]{max-width:calc(100% - 3.6rem)}.welcome[data-v-a90836bb]{padding-top:1.4rem}}.index-status[data-v-6ff74ecf]{position:relative}.index-btn[data-v-6ff74ecf]{display:flex;align-items:center;justify-content:center;position:relative;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.index-btn[data-v-6ff74ecf]:hover{color:var(--color-text-secondary);background:var(--color-border-subtle)}.index-btn svg[data-v-6ff74ecf]{width:15px;height:15px}.index-btn--warn[data-v-6ff74ecf]{color:#d97706}.index-btn--warn[data-v-6ff74ecf]:hover{color:#b45309;background:#fef3c7}.index-btn--muted[data-v-6ff74ecf]{color:var(--color-text-muted)}.index-dot[data-v-6ff74ecf]{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:#d97706;animation:pulse-6ff74ecf 2s ease-in-out infinite}@keyframes pulse-6ff74ecf{0%,to{opacity:1}50%{opacity:.4}}.index-panel[data-v-6ff74ecf]{position:absolute;top:calc(100% + 8px);right:0;width:200px;padding:12px 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;display:flex;flex-direction:column;gap:5px}.index-panel-label[data-v-6ff74ecf]{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:1px}.index-panel-status[data-v-6ff74ecf]{font-size:13px;font-weight:500;display:flex;align-items:center;gap:5px}.index-panel-hint[data-v-6ff74ecf]{font-size:12px;color:var(--color-text-muted);line-height:1.4}.status--ok[data-v-6ff74ecf]{color:#059669}.status--warn[data-v-6ff74ecf]{color:#d97706}.status--info[data-v-6ff74ecf]{color:var(--color-text-secondary)}.index-panel-btn[data-v-6ff74ecf]{display:flex;align-items:center;justify-content:center;margin-top:6px;padding:5px 10px;font-size:12px;font-weight:500;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.index-panel-btn--primary[data-v-6ff74ecf]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.index-panel-btn--primary[data-v-6ff74ecf]:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.index-panel-btn[data-v-6ff74ecf]:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-text-muted)}.index-panel-btn[data-v-6ff74ecf]:disabled{opacity:.55;cursor:default}.spin[data-v-6ff74ecf]{animation:spin-6ff74ecf .9s linear infinite}.inline-spin[data-v-6ff74ecf]{width:11px;height:11px;flex-shrink:0}@keyframes spin-6ff74ecf{to{transform:rotate(360deg)}}[hidden]{display:none!important}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #1a56db;--color-primary-hover: #1e40af;--color-primary-light: #eff6ff;--color-bg: #f8fafc;--color-surface: #ffffff;--color-border: #e2e8f0;--color-border-subtle: #f1f5f9;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--sidebar-width: 240px;--sidebar-collapsed-width: 64px;--sidebar-bg: #0f172a;--sidebar-text: #cbd5e1;--sidebar-text-muted: #64748b;--sidebar-active-bg: rgba(255, 255, 255, .08);--sidebar-active-text: #ffffff;--sidebar-hover-bg: rgba(255, 255, 255, .05);--topbar-height: 56px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", sans-serif;--font-mono: "SF Mono", "Fira Code", "Cascadia Code", monospace}html,body{height:100%;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--color-text-primary);background:var(--color-bg);-webkit-font-smoothing:antialiased}.app-layout{display:flex;min-height:100vh}.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-width);background:var(--sidebar-bg);display:flex;flex-direction:column;z-index:100;transition:width var(--transition-slow),transform var(--transition-slow);overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-4);border-bottom:1px solid rgba(255,255,255,.06);min-height:var(--topbar-height);flex-shrink:0}.sidebar-logo-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;flex:1;min-width:0;overflow:hidden}.sidebar-logo{display:flex;align-items:center;gap:var(--space-2);white-space:nowrap;overflow:hidden}.landing-module:not([hidden]){height:100%;display:flex;align-items:center;justify-content:center}.landing-center{display:flex;align-items:center;justify-content:center}.landing-logo{width:480px;max-width:80vw;height:auto;border-radius:var(--radius-md)}.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-primary);color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em;border-radius:var(--radius-sm);flex-shrink:0}.logo-text{color:#fff;font-size:15px;font-weight:600;letter-spacing:-.01em;opacity:1;transition:opacity var(--transition-slow)}.sidebar.collapsed .logo-text{opacity:0;pointer-events:none}.sidebar-toggle{background:none;border:none;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px;flex-shrink:0;transition:background var(--transition-fast)}.sidebar-toggle:hover{background:#ffffff14}.sidebar-toggle span{display:block;width:18px;height:2px;background:var(--sidebar-text);border-radius:2px;transition:transform var(--transition-base),opacity var(--transition-base)}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-3) 0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.nav-list{list-style:none}.nav-item{margin:var(--space-1) var(--space-2)}.nav-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--sidebar-text);text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;position:relative}.nav-link:hover{background:var(--sidebar-hover-bg);color:#fff}.nav-item.active .nav-link{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.nav-item.coming-soon .nav-link{opacity:.5;cursor:not-allowed}.nav-item.coming-soon .nav-link:hover{background:none;color:var(--sidebar-text)}.nav-icon{width:18px;height:18px;flex-shrink:0}.nav-label{font-size:13.5px;font-weight:500;opacity:1;transition:opacity var(--transition-slow)}.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-badge{opacity:0;pointer-events:none}.nav-badge{margin-left:auto;font-size:10px;font-weight:600;letter-spacing:.04em;background:#ffffff14;color:var(--sidebar-text-muted);padding:2px 6px;border-radius:20px}.sidebar.collapsed .nav-item{position:relative}.sidebar-footer{padding:var(--space-4);border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.sidebar-version{font-size:11px;color:var(--sidebar-text-muted);white-space:nowrap;overflow:hidden}.main-content{flex:1;margin-left:var(--sidebar-width);min-width:0;display:flex;flex-direction:column;transition:margin-left var(--transition-slow)}.sidebar.collapsed~.main-content{margin-left:var(--sidebar-collapsed-width)}.topbar{position:sticky;top:0;z-index:50;height:var(--topbar-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;padding:0 var(--space-6);gap:var(--space-4)}.topbar-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:background var(--transition-fast)}.topbar-menu-btn svg{width:20px;height:20px;display:block}.topbar-menu-btn:hover{background:var(--color-border-subtle)}.topbar-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:13.5px}.breadcrumb-root{color:var(--color-text-muted);font-weight:500}.breadcrumb-sep{color:var(--color-text-muted)}.breadcrumb-current{color:var(--color-text-primary);font-weight:600}.page-content{flex:1;padding:var(--space-8) var(--space-8);max-width:960px;width:100%}.module-header{margin-bottom:var(--space-8)}.module-header h1{font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);margin-bottom:var(--space-2)}.module-subtitle{color:var(--color-text-secondary);font-size:14.5px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-12) var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.empty-icon{width:64px;height:64px;color:var(--color-text-muted);margin-bottom:var(--space-5)}.empty-icon svg{width:100%;height:100%}.empty-state h2{font-size:18px;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-3)}.empty-state p{color:var(--color-text-secondary);max-width:380px;margin-bottom:var(--space-6);line-height:1.6}.coming-soon-note{margin-top:var(--space-3);font-size:12px;color:var(--color-text-muted)}.app-loading{min-height:100vh;background:var(--sidebar-bg)}.auth-gate{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);background:var(--sidebar-bg)}.signin-logo{width:320px;max-width:80vw;height:auto;border-radius:var(--radius-md)}.login-btn{min-width:160px}.auth-error{width:100%;padding:var(--space-3) var(--space-4);background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#dc2626;font-size:13px;line-height:1.5;text-align:center}.topbar-user{margin-left:auto;display:flex;align-items:center;gap:var(--space-3)}.topbar-user-name{font-size:13px;color:var(--color-text-secondary);font-weight:500}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:13.5px;font-weight:600;border:none;cursor:pointer;transition:background var(--transition-fast),opacity var(--transition-fast);text-decoration:none;white-space:nowrap}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-ghost:hover:not(:disabled){background:var(--color-border-subtle);color:var(--color-text-primary)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:12.5px}.contracts-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-12) var(--space-8);background:var(--color-surface);border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);gap:var(--space-3)}.contracts-empty-icon{width:44px;height:44px;color:var(--color-text-muted)}.contracts-empty-title{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.contracts-empty-text{font-size:12.5px;color:var(--color-text-muted);max-width:280px;line-height:1.5}.contracts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);margin-top:var(--space-6)}#contractsUpload{margin-bottom:var(--space-6)}.dropzone-full{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-10) var(--space-8);text-align:center;background:var(--color-border-subtle);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);-webkit-user-select:none;user-select:none}.dropzone-full:hover,.dropzone-full.drag-active{border-color:var(--color-primary);background:#eff6ff}.dropzone-full.dropzone-uploading{opacity:.6;pointer-events:none}.dropzone-icon{width:48px;height:48px;color:var(--color-text-muted);transition:color var(--transition-fast)}.dropzone-full:hover .dropzone-icon,.dropzone-full.drag-active .dropzone-icon{color:var(--color-primary)}.dropzone-heading{font-size:14px;font-weight:600;color:var(--color-text-primary)}.dropzone-subtext{font-size:13px;color:var(--color-text-muted)}.dropzone-types{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.dropzone-badge{font-family:var(--font-mono);font-size:11px;background:var(--color-border);color:var(--color-text-secondary);padding:2px 8px;border-radius:20px;letter-spacing:.03em}.upload-progress{margin-top:var(--space-3);display:flex;align-items:center;gap:var(--space-3)}.upload-progress-bar{flex:1;height:4px;background:var(--color-border);border-radius:2px;overflow:hidden}.upload-progress-fill{height:100%;width:100%;background:var(--color-primary);border-radius:2px;animation:progress-indeterminate 1.4s ease-in-out infinite;transform-origin:left}@keyframes progress-indeterminate{0%{transform:translate(-100%) scaleX(.4)}50%{transform:translate(60%) scaleX(.6)}to{transform:translate(200%) scaleX(.4)}}.upload-progress-label{font-size:12.5px;color:var(--color-text-secondary);white-space:nowrap}.upload-error{margin-top:var(--space-3);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md)}.upload-error-text{flex:1;font-size:13px;color:#dc2626}.contract-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);position:relative;overflow:hidden}.contract-card:hover{border-color:#cbd5e1;box-shadow:var(--shadow-sm)}.contract-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-primary);opacity:0;transition:opacity var(--transition-fast)}.contract-card:hover:before{opacity:1}.contract-card-header{display:flex;align-items:flex-start;gap:var(--space-3)}.contract-card-icon{width:36px;height:36px;background:var(--color-border-subtle);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);flex-shrink:0}.contract-card-icon svg{width:18px;height:18px}.contract-card-info{flex:1;min-width:0}.contract-card-name{font-size:13.5px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.contract-card-meta{font-size:11.5px;color:var(--color-text-muted)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;font-size:11.5px;font-weight:600;white-space:nowrap;flex-shrink:0}.badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.badge-processing{background:#fef3c7;color:#b45309}.badge-processing .badge-dot{background:#d97706;animation:pulse-dot 1.2s ease-in-out infinite}.badge-success{background:#dcfce7;color:#15803d}.badge-success .badge-dot{background:#16a34a}.badge-error{background:#fee2e2;color:#b91c1c}.badge-error .badge-dot{background:#dc2626}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.auth-test-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);max-width:480px}.auth-test-description{color:var(--color-text-secondary);font-size:13.5px;line-height:1.6;margin-bottom:var(--space-5)}.auth-test-description code{font-family:var(--font-mono);font-size:12px;background:var(--color-border-subtle);padding:1px 5px;border-radius:var(--radius-sm);color:var(--color-text-primary)}.auth-test-actions{display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.auth-test-result{font-family:var(--font-mono);font-size:12.5px;line-height:1.6;padding:var(--space-4);border-radius:var(--radius-md);white-space:pre-wrap}.auth-test-loading{background:var(--color-border-subtle);color:var(--color-text-muted)}.auth-test-allowed{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.auth-test-denied{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.auth-test-error{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:99}@media (max-width: 1024px){.sidebar{width:var(--sidebar-collapsed-width)}.sidebar .logo-text,.sidebar .nav-label,.sidebar .nav-badge{opacity:0;pointer-events:none}.main-content{margin-left:var(--sidebar-collapsed-width)}.sidebar.expanded{width:var(--sidebar-width)}.sidebar.expanded .logo-text,.sidebar.expanded .nav-label,.sidebar.expanded .nav-badge{opacity:1;pointer-events:auto}}@media (max-width: 640px){.sidebar{width:var(--sidebar-width);transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar.open .logo-text,.sidebar.open .nav-label,.sidebar.open .nav-badge{opacity:1;pointer-events:auto}.sidebar.open~.sidebar-overlay{display:block}.main-content{margin-left:0}.topbar-menu-btn{display:flex}.sidebar-toggle{display:none}.page-content{padding:var(--space-5) var(--space-5)}}
