:root{font-family:Outfit,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#e2e8f0;background-color:#0b0f19;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-height:100vh;overflow:hidden;background:radial-gradient(circle at 50% 50%,#111827 0%,#070a13 100%)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:rgba(15,23,42,.3)}::-webkit-scrollbar-thumb{background:rgba(14,165,233,.2);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:rgba(14,165,233,.4)}.app-container{display:flex;flex-direction:column;height:100vh;width:100vw}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:rgba(11,15,25,.8);border-bottom:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50}.brand{display:flex;align-items:center;gap:.75rem}.brand h1{margin:0;font-size:1.25rem;font-weight:800;letter-spacing:-.025em;background:linear-gradient(135deg,#06b6d4 0%,#3b82f6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand .tagline{font-size:.75rem;color:#94a3b8;font-weight:500}.stats-badges{display:flex;align-items:center;gap:.75rem}.stat-badge{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;border-radius:9999px;background:rgba(15,23,42,.6);border:1px solid rgba(255,255,255,.05);font-size:.75rem;font-weight:600;color:#94a3b8}.stat-badge span.val{color:#38bdf8}.stat-badge.db-connected{border-color:#10b98133;background:rgba(16,185,129,.05);color:#34d399}.stat-badge.db-disconnected{border-color:#f59e0b33;background:rgba(245,158,11,.05);color:#fbbf24}.domain-switcher-bar{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:.35rem 1.5rem;background:rgba(11,15,25,.5);border-bottom:1px solid rgba(255,255,255,.04);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:40}.domain-tab{background:none;border:none;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:700;color:#94a3b8;cursor:pointer;padding:.3rem 1rem;border-radius:9999px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:.4rem;border:1px solid transparent}.domain-tab:hover{color:#e2e8f0;background:rgba(255,255,255,.03)}.domain-tab.active{color:#fff;background:linear-gradient(135deg,rgba(99,102,241,.12) 0%,rgba(139,92,246,.12) 100%);border:1px solid rgba(139,92,246,.35);box-shadow:0 0 16px #8b5cf61a;text-shadow:0 0 8px rgba(255,255,255,.2)}.app-workspace{display:flex;flex:1;height:calc(100vh - 90px);overflow:hidden;background:transparent}.panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.panel-left{width:420px;background:rgba(15,23,42,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.panel-right{flex:1;position:relative;background:radial-gradient(circle at 70% 30%,#0d1527 0%,#060a13 100%)}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.04)}.panel-header h2{margin:0;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;display:flex;align-items:center;gap:.5rem}.chat-history{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.chat-bubble{max-width:85%;padding:.85rem 1.1rem;border-radius:1rem;font-size:.875rem;line-height:1.6}.chat-bubble.user{align-self:flex-end;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);color:#fff;border-bottom-right-radius:.25rem;box-shadow:0 4px 12px #0284c726}.chat-bubble.assistant{align-self:flex-start;background:rgba(30,41,59,.6);border:1px solid rgba(255,255,255,.05);color:#cbd5e1;border-bottom-left-radius:.25rem}.chat-bubble-inner{white-space:pre-wrap}.evidence-header{margin:.75rem 0 .35rem;font-size:.75rem;font-weight:700;color:#0ea5e9;text-transform:uppercase}.evidence-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;background:rgba(14,165,233,.1);border:1px solid rgba(14,165,233,.2);border-radius:4px;font-size:.7rem;color:#38bdf8;margin-right:.4rem;margin-top:.25rem}.recs-header{margin:.75rem 0 .35rem;font-size:.75rem;font-weight:700;color:#a855f7;text-transform:uppercase}.rec-card{padding:.5rem .75rem;background:rgba(168,85,247,.05);border:1px solid rgba(168,85,247,.15);border-radius:6px;margin-top:.35rem;font-size:.75rem;line-height:1.4;color:#d8b4fe}.chat-input-container{padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.05);background:rgba(15,23,42,.5);display:flex;gap:.75rem}.chat-input{flex:1;background:rgba(15,23,42,.8);border:1px solid rgba(255,255,255,.08);border-radius:.5rem;padding:.75rem 1rem;color:#e2e8f0;font-family:inherit;font-size:.875rem;transition:all .2s}.chat-input:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf826}.chat-submit-btn{background:linear-gradient(135deg,#0ea5e9 0%,#2563eb 100%);border:none;border-radius:.5rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:opacity .2s}.chat-submit-btn:hover{opacity:.9}.tab-header{display:flex;background:rgba(15,23,42,.4);border-bottom:1px solid rgba(255,255,255,.05)}.tab-btn{flex:1;background:none;border:none;padding:.75rem 1rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab-btn.active{color:#38bdf8;border-bottom-color:#38bdf8;background:rgba(56,189,248,.03)}.graph-view-container{width:100%;height:100%;position:relative;overflow-y:auto}.graph-canvas{width:100%;height:450px}.graph-vertical-splitter{width:100%;height:14px;background:#0f172a;border-top:1px solid rgba(148,163,184,.25);border-bottom:1px solid rgba(15,23,42,.95);cursor:row-resize;transition:all .15s ease;z-index:25;position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.graph-vertical-splitter:hover,.graph-vertical-splitter:active{background:#1e1b4b;border-top-color:#6366f1;border-bottom-color:#6366f1;box-shadow:0 0 12px #6366f159}.graph-vertical-splitter .splitter-grip-pill{display:flex;align-items:center;gap:6px;background:#1e293b;border:1px solid rgba(129,138,248,.4);border-radius:9999px;padding:1px 10px;height:16px;box-shadow:0 2px 5px #0006;transition:all .15s ease}.graph-vertical-splitter:hover .splitter-grip-pill{background:#4338ca;border-color:#818cf8;box-shadow:0 0 10px #6366f199}.graph-vertical-splitter .splitter-grip-dots{color:#818cf8;font-size:11px;font-weight:700;letter-spacing:1.5px;line-height:1}.graph-vertical-splitter:hover .splitter-grip-dots{color:#fff}.graph-vertical-splitter .splitter-grip-label{color:#94a3b8;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.graph-vertical-splitter:hover .splitter-grip-label{color:#e0e7ff}.node-circle{stroke-width:0px;transition:stroke-width .2s;cursor:pointer}.node-group:hover .node-circle{stroke-width:2.5px;stroke:#fff}.node-label-text{fill:#e2e8f0;font-size:10px;font-weight:600;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.8)}.link-line{stroke-opacity:.65;transition:stroke-opacity .2s;fill:none}.link-label{font-size:7.5px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.9);pointer-events:none}.graph-controls{position:absolute;top:1rem;left:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:10}.graph-control-input{background:rgba(15,23,42,.85);border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:.35rem .75rem;font-size:.75rem;color:#e2e8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.graph-control-btn{background:rgba(15,23,42,.85);border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:.35rem .75rem;font-size:.72rem;font-weight:600;color:#94a3b8;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .15s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:.35rem}.graph-control-btn:hover{background:rgba(30,41,59,.9);border-color:#6366f180;color:#fff;box-shadow:0 0 12px #6366f14d}.graph-control-btn:active{transform:scale(.97)}.graph-detail-overlay{position:absolute;top:1rem;right:1rem;bottom:1rem;max-width:calc(100% - 2rem);background:rgba(15,23,42,.95);border:1px solid rgba(139,92,246,.3);border-radius:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;padding:1rem;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;box-shadow:0 0 24px #0009;transition:width .05s ease-out}.overlay-resizer-left{position:absolute;left:0;top:0;bottom:0;width:10px;cursor:col-resize;z-index:30;display:flex;align-items:center;justify-content:center;background:transparent;transition:background .15s ease;-webkit-user-select:none;user-select:none}.overlay-resizer-left:hover,.overlay-resizer-left:active{background:rgba(139,92,246,.25)}.overlay-resizer-left:after{content:"";width:2px;height:36px;background:rgba(139,92,246,.6);border-radius:1px}.graph-detail-overlay h3{margin:0;font-size:1.125rem;font-weight:700;color:#e2e8f0}.graph-detail-overlay span.label-badge{align-self:flex-start;padding:.2rem .5rem;background:rgba(14,165,233,.1);border:1px solid rgba(14,165,233,.2);border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;color:#38bdf8}.graph-detail-overlay p.desc{font-size:.8rem;color:#94a3b8;line-height:1.5;margin:0}.tech-schema-box{background:rgba(15,23,42,.4);border:1px solid rgba(255,255,255,.04);border-radius:6px;padding:.75rem}.tech-schema-box h4{margin:0 0 .5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;color:#38bdf8}.tech-schema-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.tech-schema-item{display:flex;flex-direction:column}.tech-schema-item span.lbl{font-size:.65rem;color:#94a3b8;text-transform:uppercase;font-weight:600}.tech-schema-item span.val{font-size:.7rem;color:#cbd5e1;font-weight:600}.sources-view{padding:1.25rem;height:100%;overflow-y:auto;box-sizing:border-box}.sources-view-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.sources-view-header h3{margin:0;font-size:.875rem;font-weight:700;color:#94a3b8;text-transform:uppercase}.sync-trigger-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.75rem;font-weight:700;text-transform:uppercase;cursor:pointer;transition:opacity .2s}.sync-trigger-btn:hover{opacity:.9}.sync-trigger-btn:disabled{opacity:.5;cursor:not-allowed}.sources-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.source-card{background:rgba(15,23,42,.4);border:1px solid rgba(255,255,255,.05);border-radius:6px;padding:.85rem;display:flex;flex-direction:column;gap:.5rem}.source-card-header{display:flex;align-items:center;justify-content:space-between}.source-card-header h4{margin:0;font-size:.8rem;font-weight:700;color:#e2e8f0}.source-card-badge{padding:.15rem .4rem;font-size:.6rem;font-weight:700;text-transform:uppercase;border-radius:4px}.source-card-badge.Active{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);color:#34d399}.source-card-badge.Placeholder{background:rgba(100,116,139,.1);border:1px solid rgba(100,116,139,.2);color:#94a3b8}.source-card p.purpose{font-size:.7rem;color:#94a3b8;margin:0;line-height:1.4}.source-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;background:rgba(15,23,42,.3);padding:.35rem;border-radius:4px}.source-card-stat{display:flex;flex-direction:column;align-items:center}.source-card-stat span.lbl{font-size:.55rem;color:#94a3b8;text-transform:uppercase}.source-card-stat span.val{font-size:.65rem;font-weight:700;color:#38bdf8}.sync-toast{position:absolute;bottom:1.5rem;right:1.5rem;background:rgba(16,185,129,.95);color:#fff;border-radius:6px;padding:.75rem 1.25rem;box-shadow:0 10px 25px #0000004d;z-index:100;font-size:.8rem;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.workspace-splitter{width:8px;cursor:col-resize;background:#0f172a;border-left:1px solid rgba(148,163,184,.2);border-right:1px solid rgba(148,163,184,.2);transition:all .2s cubic-bezier(.4,0,.2,1);z-index:50;align-self:stretch;position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.workspace-splitter:after{content:"⋮";color:#94a3b880;font-size:13px;font-weight:700;line-height:1}.workspace-splitter:hover,.workspace-splitter:active{background-color:#4338ca;border-left-color:#818cf8;border-right-color:#818cf8;box-shadow:0 0 12px #6366f180}.workspace-splitter:hover:after,.workspace-splitter:active:after{color:#fff}.graph-legend-ribbon{display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem;padding:.5rem 1.25rem;background:rgba(15,23,42,.45);border-bottom:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:30}.legend-label-title{font-size:.6rem;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-right:.25rem}.legend-pill{display:flex;align-items:center;gap:.45rem;transition:transform .15s ease}.legend-pill:hover{transform:translateY(-1px)}.legend-dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 8px currentColor}.legend-text{font-size:.72rem;font-weight:600;color:#94a3b8}.individual-sync-btn:hover{background:rgba(99,102,241,.25)!important;border-color:#6366f199!important;color:#fff!important;box-shadow:0 0 10px #6366f159}.individual-sync-btn:active{transform:scale(.96)}.lineage-table-container{margin-top:1.5rem;padding:1.25rem;background:rgba(15,23,42,.4);border:1px solid rgba(255,255,255,.05);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 1px #ffffff08,0 4px 20px #00000040;animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.lineage-table-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.04);padding-bottom:.5rem}.lineage-table-header h4{font-size:.85rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em;margin:0}.clear-highlight-btn{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.25);border-radius:4px;padding:4px 10px;font-size:.7rem;font-weight:600;color:#fca5a5;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}.clear-highlight-btn:hover{background:rgba(239,68,68,.2);border-color:#ef444466;transform:translateY(-1px)}.clear-highlight-btn:active{transform:scale(.96)}.lineage-table-wrapper{overflow-x:auto}.lineage-table{width:100%;border-collapse:collapse;text-align:left}.lineage-table th{font-size:.68rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;padding:.6rem .75rem;border-bottom:1px solid rgba(255,255,255,.05)}.lineage-table td{font-size:.72rem;color:#cbd5e1;padding:.65rem .75rem;border-bottom:1px solid rgba(255,255,255,.03);vertical-align:middle}.lineage-table-row{transition:background-color .1s ease}.lineage-table-row:hover{background:rgba(255,255,255,.02)}.entity-cell{cursor:pointer;display:flex;align-items:center;gap:6px;transition:color .1s ease}.entity-cell:hover{color:#fff}.node-marker{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.acronym-sub{font-size:.65rem;color:#475569;font-family:monospace}.table-badge{display:inline-block;font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;border:1px solid currentColor}.rel-cell{font-family:monospace;font-size:.68rem;color:#94a3b8}.provenance-cell{font-size:.68rem;color:#94a3b8;font-style:italic}.command-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(3,7,18,.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;z-index:100;animation:fadeIn .15s ease-out}.command-palette-modal{width:100%;max-width:620px;background:#0f172a;border:1px solid rgba(139,92,246,.35);border-radius:12px;box-shadow:0 20px 40px #0009,0 0 20px #8b5cf626;overflow:hidden;display:flex;flex-direction:column}.palette-input-wrapper{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(15,23,42,.95)}.palette-input{flex:1;background:transparent;border:none;outline:none;color:#f8fafc;font-size:.95rem;font-family:Outfit,sans-serif}.palette-input::placeholder{color:#64748b}.palette-badge{font-size:10px;font-family:monospace;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#94a3b8;padding:2px 6px;border-radius:4px}.palette-results-list{max-height:380px;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:2px}.palette-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .12s ease;border:1px solid transparent}.palette-item:hover,.palette-item.active{background:rgba(99,102,241,.15);border-color:#6366f159}.palette-item-left{display:flex;align-items:center;gap:10px;min-width:0}.palette-item-title{font-weight:600;font-size:.85rem;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-item-sub{font-size:.72rem;color:#94a3b8}.palette-footer{padding:8px 16px;background:rgba(11,15,25,.9);border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between;font-size:.7rem;color:#64748b}.entity-collapse-box{margin:10px 0;background:rgba(15,23,42,.5);border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden}.entity-collapse-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:rgba(30,41,59,.4);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04)}.entity-collapse-toggle{background:rgba(99,102,241,.2);border:1px solid rgba(99,102,241,.4);color:#c7d2fe;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;cursor:pointer;transition:all .15s ease}.entity-collapse-toggle:hover{background:rgba(99,102,241,.35);color:#fff}.entity-divisions-container{padding:10px;display:flex;flex-direction:column;gap:8px}.entity-division-group{display:flex;flex-direction:column;gap:4px}.entity-division-title{font-size:.68rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.entity-chips-row{display:flex;flex-wrap:wrap;gap:4px}.entity-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;background:rgba(14,165,233,.1);border:1px solid rgba(14,165,233,.25);border-radius:4px;font-size:.72rem;font-weight:600;color:#38bdf8;cursor:pointer;transition:all .12s ease}.entity-chip:hover{background:rgba(14,165,233,.25);border-color:#38bdf8;color:#fff}.chat-action-bar{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:8px;padding-top:6px;border-top:1px solid rgba(255,255,255,.06)}.copy-report-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#94a3b8}.copy-report-btn:hover{background:rgba(99,102,241,.2);border-color:#6366f166;color:#e0e7ff}.copy-report-btn.copied{background:rgba(16,185,129,.2);border-color:#10b98180;color:#34d399}.blast-radius-modal{width:100%;max-width:680px;background:#0b0f19;border:1px solid rgba(239,68,68,.4);border-radius:12px;box-shadow:0 20px 50px #000c,0 0 25px #ef444433;overflow:hidden}.blast-radius-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:rgba(239,68,68,.08);border-bottom:1px solid rgba(239,68,68,.2)}.blast-radius-body{padding:16px 20px;display:flex;flex-direction:column;gap:14px;max-height:70vh;overflow-y:auto}.risk-score-gauge{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;background:rgba(15,23,42,.6);border:1px solid rgba(255,255,255,.08)}.risk-level-badge{font-weight:800;font-size:.85rem;letter-spacing:.05em;padding:4px 10px;border-radius:4px;text-transform:uppercase}.risk-CRITICAL{background:rgba(239,68,68,.2);border:1px solid #ef4444;color:#f87171}.risk-HIGH{background:rgba(249,115,22,.2);border:1px solid #f97316;color:#fb923c}.risk-MEDIUM{background:rgba(234,179,8,.2);border:1px solid #eab308;color:#facc15}.risk-LOW{background:rgba(16,185,129,.2);border:1px solid #10b981;color:#34d399}.mobile-view-toggle{display:none}@media (max-width: 1024px){.mobile-view-toggle{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 16px;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);z-index:45}.mobile-toggle-btn{flex:1;max-width:200px;padding:6px 12px;border-radius:6px;font-size:.8rem;font-weight:700;cursor:pointer;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#94a3b8;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease}.mobile-toggle-btn.active{background:#4f46e5;border-color:#6366f1;color:#fff;box-shadow:0 0 10px #6366f14d}.workspace-splitter{display:none!important}.app-workspace{flex-direction:column;height:calc(100vh - 130px)}.panel-left,.panel-right{width:100%!important;height:100%!important}.panel.hidden-mobile{display:none!important}.app-header{flex-wrap:wrap;gap:8px;padding:8px 12px}.stats-badges{flex-wrap:wrap;gap:4px}.domain-switcher-bar{padding:4px 8px;gap:6px;overflow-x:auto;justify-content:flex-start}}.app-container.embed-mode{height:100vh;width:100vw;background:transparent}.app-container.embed-mode .app-workspace{height:100vh}.app-container.embed-mode.has-header .app-workspace{height:calc(100vh - 65px)}.app-container.embed-mode.has-tabs .app-workspace{height:calc(100vh - 50px)}.app-container.embed-mode.has-header.has-tabs .app-workspace{height:calc(100vh - 115px)}.full-view-panel{width:100%!important;flex:1 1 100%!important;max-width:100%!important}.lineage-table-container.collapsed{padding-bottom:.75rem;margin-top:1rem}.lineage-table-container.collapsed .lineage-table-header{margin-bottom:0;border-bottom:none;padding-bottom:0}.collapse-toggle-btn{transition:all .15s ease}.collapse-toggle-btn:hover{background:rgba(255,255,255,.12)!important;color:#fff!important;transform:translateY(-1px)}.collapse-toggle-btn:active{transform:scale(.96)}.table-collapse-pill{transition:all .2s ease}body:has(.theme-light),[data-theme=light] body{background:#f8fafc;color:#0f172a}.app-container.theme-light{background:#f8fafc;color:#0f172a}.app-container.theme-light .app-header{background:rgba(255,255,255,.9);border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.app-container.theme-light .brand h1{background:linear-gradient(135deg,#0284c7 0%,#4f46e5 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.app-container.theme-light .brand .tagline{color:#64748b}.app-container.theme-light .stat-badge{background:#ffffff;border:1px solid #e2e8f0;color:#475569;box-shadow:0 1px 2px #0000000a}.app-container.theme-light .stat-badge .val{color:#0284c7}.app-container.theme-light .stat-badge.db-connected{background:rgba(16,185,129,.08);border-color:#10b9814d;color:#059669}.app-container.theme-light .stat-badge.db-disconnected{background:rgba(245,158,11,.08);border-color:#f59e0b4d;color:#d97706}.app-container.theme-light .domain-switcher-bar{background:#f1f5f9;border-bottom:1px solid #e2e8f0}.app-container.theme-light .domain-tab{color:#64748b}.app-container.theme-light .domain-tab:hover{background:rgba(255,255,255,.7);color:#0f172a}.app-container.theme-light .domain-tab.active{background:#ffffff;color:#0284c7;box-shadow:0 1px 3px #00000014;border:1px solid #e2e8f0}.app-container.theme-light .panel-left{background:#ffffff;border-right:1px solid #e2e8f0}.app-container.theme-light .panel-right{background:#f8fafc}.app-container.theme-light .chat-history{background:#ffffff}.app-container.theme-light .chat-bubble.assistant{background:#f8fafc;border:1px solid #e2e8f0;color:#1e293b;box-shadow:0 1px 3px #0000000a}.app-container.theme-light .chat-bubble.assistant strong{color:#0f172a}.app-container.theme-light .chat-bubble.assistant code{background:#e2e8f0;color:#0f172a}.app-container.theme-light .chat-input-container{background:#ffffff;border-top:1px solid #e2e8f0}.app-container.theme-light .chat-input{background:#f8fafc;border:1px solid #cbd5e1;color:#0f172a}.app-container.theme-light .chat-input:focus{border-color:#0284c7;background:#ffffff;box-shadow:0 0 0 2px #0284c726}.app-container.theme-light .tab-header{background:#f1f5f9;border-bottom:1px solid #e2e8f0}.app-container.theme-light .tab-btn{color:#64748b}.app-container.theme-light .tab-btn.active{background:#ffffff;color:#0284c7;border-bottom:2px solid #0284c7}.app-container.theme-light .graph-legend-ribbon{background:#ffffff;border-bottom:1px solid #e2e8f0}.app-container.theme-light .legend-label-title{color:#475569}.app-container.theme-light .legend-text{color:#334155}.app-container.theme-light .graph-controls{background:rgba(255,255,255,.95);border:1px solid #cbd5e1;box-shadow:0 4px 12px #0000000f}.app-container.theme-light .graph-control-input{background:#ffffff!important;border:1px solid #cbd5e1!important;color:#0f172a!important}.app-container.theme-light .graph-control-btn{background:#f1f5f9;color:#334155;border:1px solid #cbd5e1}.app-container.theme-light .graph-control-btn:hover{background:#e2e8f0;color:#0f172a}.app-container.theme-light .graph-canvas{background:#f8fafc}.app-container.theme-light .lineage-table-container{background:#ffffff;border:1px solid #e2e8f0;box-shadow:0 2px 10px #0000000a}.app-container.theme-light .lineage-table-header{border-bottom:1px solid #e2e8f0}.app-container.theme-light .lineage-table-header h4{color:#0f172a}.app-container.theme-light .lineage-table th{background:#f8fafc;color:#475569;border-bottom:1px solid #e2e8f0}.app-container.theme-light .lineage-table td{color:#1e293b;border-bottom:1px solid #f1f5f9}.app-container.theme-light .lineage-table-row:hover{background:#f1f5f9}.app-container.theme-light .entity-cell:hover{color:#0284c7}.app-container.theme-light .graph-detail-overlay{background:rgba(255,255,255,.97);border:1px solid #cbd5e1;box-shadow:0 10px 25px #0000001a}.app-container.theme-light .graph-detail-overlay h3{color:#0f172a}.app-container.theme-light .graph-detail-overlay p.desc{color:#475569}.app-container.theme-light .tech-schema-box{background:#f8fafc;border:1px solid #e2e8f0}.app-container.theme-light .tech-schema-item span.lbl{color:#64748b}.app-container.theme-light .tech-schema-item span.val{color:#0f172a}.app-container.theme-light .source-card{background:#ffffff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000a}.app-container.theme-light .source-card-header h4{color:#0f172a}.app-container.theme-light .source-card p.purpose{color:#475569}.app-container.theme-light .source-card-stats{background:#f8fafc;border:1px solid #e2e8f0}.app-container.theme-light .source-card-stat span.lbl{color:#64748b}.app-container.theme-light .source-card-stat span.val{color:#0284c7}.app-container.theme-light .collapse-toggle-btn{background:#f1f5f9!important;border:1px solid #cbd5e1!important;color:#334155!important}.app-container.theme-light .collapse-toggle-btn:hover{background:#e2e8f0!important;color:#0f172a!important}.app-container.theme-light .theme-toggle-btn:hover{background:#e2e8f0!important}.app-container.theme-light .graph-vertical-splitter,[data-theme=light] .graph-vertical-splitter{background:#e2e8f0;border-top:1px solid #cbd5e1;border-bottom:1px solid #94a3b8;box-shadow:inset 0 1px 2px #0000000d}.app-container.theme-light .graph-vertical-splitter:hover,.app-container.theme-light .graph-vertical-splitter:active,[data-theme=light] .graph-vertical-splitter:hover,[data-theme=light] .graph-vertical-splitter:active{background:#c7d2fe;border-top-color:#4f46e5;border-bottom-color:#4f46e5;box-shadow:0 0 10px #4f46e54d}.app-container.theme-light .graph-vertical-splitter .splitter-grip-pill,[data-theme=light] .graph-vertical-splitter .splitter-grip-pill{background:#ffffff;border:1px solid #94a3b8;box-shadow:0 1px 4px #00000014}.app-container.theme-light .graph-vertical-splitter:hover .splitter-grip-pill,[data-theme=light] .graph-vertical-splitter:hover .splitter-grip-pill{background:#4f46e5;border-color:#4338ca}.app-container.theme-light .graph-vertical-splitter .splitter-grip-dots,[data-theme=light] .graph-vertical-splitter .splitter-grip-dots{color:#4f46e5}.app-container.theme-light .graph-vertical-splitter:hover .splitter-grip-dots,[data-theme=light] .graph-vertical-splitter:hover .splitter-grip-dots{color:#fff}.app-container.theme-light .graph-vertical-splitter .splitter-grip-label,[data-theme=light] .graph-vertical-splitter .splitter-grip-label{color:#475569}.app-container.theme-light .graph-vertical-splitter:hover .splitter-grip-label,[data-theme=light] .graph-vertical-splitter:hover .splitter-grip-label{color:#fff}.app-container.theme-light .workspace-splitter,[data-theme=light] .workspace-splitter{background:#e2e8f0;border-left:1px solid #cbd5e1;border-right:1px solid #cbd5e1}.app-container.theme-light .workspace-splitter:after,[data-theme=light] .workspace-splitter:after{color:#64748b}.app-container.theme-light .workspace-splitter:hover,.app-container.theme-light .workspace-splitter:active,[data-theme=light] .workspace-splitter:hover,[data-theme=light] .workspace-splitter:active{background:#4f46e5;border-left-color:#4338ca;border-right-color:#4338ca}.app-container.theme-light .workspace-splitter:hover:after,.app-container.theme-light .workspace-splitter:active:after,[data-theme=light] .workspace-splitter:hover:after,[data-theme=light] .workspace-splitter:active:after{color:#fff}.graph-controls{position:absolute;top:12px;left:12px;z-index:25;display:flex;flex-direction:column;gap:6px;background:rgba(15,23,42,.92);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 10px;box-shadow:0 4px 16px #00000059;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease;max-width:320px}.app-container.theme-light .graph-controls{background:rgba(255,255,255,.96);border:1px solid #cbd5e1;box-shadow:0 4px 16px #00000014}.graph-controls-hide-btn{transition:all .15s ease}.graph-controls-hide-btn:hover{background:rgba(255,255,255,.18)!important;color:#fff!important}.app-container.theme-light .graph-controls-hide-btn{background:#f1f5f9!important;border:1px solid #cbd5e1!important;color:#475569!important}.app-container.theme-light .graph-controls-hide-btn:hover{background:#e2e8f0!important;color:#0f172a!important}.graph-controls-restore-btn{transition:all .2s ease}.graph-controls-restore-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0000004d;border-color:#6366f1!important}.app-container.theme-light .graph-controls-restore-btn{background:rgba(255,255,255,.96)!important;color:#334155!important;border:1px solid #cbd5e1!important;box-shadow:0 4px 12px #00000014!important}.app-container.theme-light .graph-controls-restore-btn:hover{background:#ffffff!important;color:#4f46e5!important;border-color:#6366f1!important}.link-label,.node-label-text{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;transition:opacity .15s ease;-webkit-user-select:none;user-select:none;pointer-events:none}
