/* Website integration: retain the shared VardrSec header and footer. */
.project-explorer[data-view="compare"] .table-wrap{scrollbar-width:none}
.project-explorer[data-view="compare"] .table-wrap::-webkit-scrollbar{display:none}
.explorer-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}
.explorer-intro .section-title{margin-bottom:0;min-width:0}
.explorer-intro .explorer-kicker{font:12px var(--font-mono);letter-spacing:.14em;color:var(--accent2);margin-bottom:9px}
.explorer-snapshot{font:12px var(--font-mono);color:var(--text-2);padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);white-space:nowrap}
.explorer-snapshot>span{display:inline-block;width:6px;height:6px;background:var(--accent2);border-radius:2px;margin-right:7px}
.explorer-snapshot small{display:block;font:12px var(--font-sans);color:var(--text-3);margin:5px 0 0 13px}
.project-explorer{--bg:#080c13;--panel:#0e141f;--panel2:#131b29;--line:rgba(148,170,204,.15);--text:#e9eef6;--muted:#a9b6ca;--dim:#93a2b8;--lime:#6ee7d2;--mono:var(--font-mono);background:transparent;font-family:var(--font-sans);font-size:14px}
.project-explorer #explorer-nav{display:flex;gap:5px;border-bottom:1px solid var(--line);padding:0 0 12px;margin-bottom:25px;overflow-x:auto}
.project-explorer .nav-item{width:auto;flex:none;font-size:12px;padding:11px 15px;white-space:nowrap}
.project-explorer .nav-item.active:after{display:none}
.project-explorer #project-nav[hidden]{display:none}
.project-explorer .explorer-view-picker{display:none}
.project-explorer .page-head{margin-bottom:22px}
.project-explorer[data-view="ecosystem"] .page-head{margin:0;display:block}
.project-explorer[data-view="ecosystem"] .page-head h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.project-explorer[data-view="ecosystem"] .page-head p,.project-explorer[data-view="ecosystem"] .page-head>a{display:none}
.project-explorer .page-head h2{font-size:25px;letter-spacing:-.03em}
.project-explorer .page-head p{font-size:13px;max-width:700px;margin-top:9px}
.project-explorer .page-head .eyebrow{display:none}
.project-explorer .stat strong{font-size:24px}
.project-explorer .stat small{font-size:12px}
.project-explorer .stat:last-child strong{font-size:15px}
.project-explorer .explore-layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px}
.project-explorer .inspector{position:static;min-height:0}
.project-explorer .inspector-top{background:linear-gradient(135deg,color-mix(in srgb,var(--c) 9%,#0e141f),#0e141f)}
.project-explorer .detail-body p,.project-explorer .responsibility-list li{font-size:12px}
.project-explorer .detail-body p{line-height:1.75}
.project-explorer .inspector h3{font-size:25px}
.project-explorer .detail-label{font-size:12px}
.project-explorer .tagline{font-size:12px}
.project-explorer .badge{font-size:12px}
.project-explorer .detail-links a{font-size:12px}
.project-explorer .graph{height:390px;min-height:390px}
.project-explorer .graph .node{width:170px;min-height:95px}
.project-explorer .node strong{font-size:12px}
.project-explorer .node small{font-size:12px}
.project-explorer .node-code{display:none}
.project-explorer .graph text{fill:var(--muted)}
.project-explorer .map-annotation{position:absolute;transform:translate(-50%,-50%);font:12px var(--font-mono);color:var(--muted);white-space:nowrap;pointer-events:none}
.project-explorer .map-annotation-summary{display:none}
.project-explorer .panel-head h3{font-size:14px}
.project-explorer .panel-head .micro{display:none}
.project-explorer .panel-head{flex-wrap:wrap}
.project-explorer .segmented button{font-size:12px;padding:6px 9px}
.project-explorer .section-title{display:flex;margin:24px 0 12px;padding:0;border:0}
.project-explorer .section-title h3{font-size:15px}
.project-explorer .section-title::before{display:none}
.project-explorer .contract-row h4{font-size:12px}
.project-explorer .contract-row p,.project-explorer .note{font-size:12px}
.project-explorer .contract-row>a{white-space:nowrap}
.project-explorer .text-link{color:var(--accent)}
.project-explorer .btn{transform:none;box-shadow:none;min-height:36px}
.project-explorer .btn:before{display:none}
.project-explorer .result-card{background:linear-gradient(140deg,#142d3c,#0e141f 70%);border-color:#315866}
.project-explorer .result-card>p,.project-explorer .result-card .acceptance,.project-explorer .field-help,.project-explorer .recommend-note{font-size:12px;color:var(--muted)}
.project-explorer .form-label,.project-explorer .check-list label{font-size:13px;color:var(--text-2)}
.project-explorer input[type="checkbox"]{width:16px;min-height:16px;flex:0 0 16px;padding:0;margin:0}
.project-explorer .form-card select,.project-explorer textarea{background:#0a111d;border-color:var(--line);font-size:13px;color:var(--text)}
.project-explorer .gap-card>p,.project-explorer .gap-next,.project-explorer .overlap-card p,.project-explorer .source-summary p,.project-explorer .methodology p,.project-explorer .methodology li{font-size:12px}
.project-explorer .gap-card h4{font-size:17px}
.project-explorer .compare-table{font-size:12px}
.project-explorer .source-table{font-size:12px}
.project-explorer #toast{left:50%;background:var(--accent2);color:var(--bg)}
.project-explorer .inspector{scroll-margin-top:90px}
@media(max-width:1000px){
  .project-explorer .explore-layout{grid-template-columns:1fr}
  .project-explorer .detail-body{display:grid;grid-template-columns:1fr 1fr}
  .project-explorer .graph{height:410px}
}
@media(max-width:600px){
  .explorer-intro{display:block;margin-bottom:20px}
  .explorer-snapshot{display:inline-block;margin-top:17px;padding:9px 12px}
  .explorer-snapshot small{display:none}
  .project-explorer #explorer-nav{margin-top:0;margin-bottom:21px;gap:3px}
  .project-explorer .nav-item{font-size:12px;padding:9px 10px;border-radius:5px}
  .project-explorer .page-head h2{font-size:23px}
  .project-explorer .page-head p{font-size:12px}
  .project-explorer .map-filter{flex-wrap:wrap}
  .project-explorer .search-wrap{flex-basis:100%}
  .project-explorer .map-filter select{max-width:none}
  .project-explorer .graph{height:390px;min-height:390px}
  .project-explorer .graph .node{width:125px;min-height:88px;padding:10px 8px}
  .project-explorer .node strong{font-size:12px}
  .project-explorer .node small{font-size:12px}
  .project-explorer .node-icon{width:19px;height:19px}
  .project-explorer .detail-body{display:block}
  .project-explorer .section-title small{display:none}
  .project-explorer .stat{padding:12px}
  .project-explorer .stat small{font-size:12px}
  .project-explorer .stat:last-child strong{font-size:12px}
  .project-explorer .contract-row{grid-template-columns:20px 1fr}
  .project-explorer .contract-row>a{grid-column:2}
}
@media(max-width:370px){.project-explorer .graph .node{width:110px}.project-explorer .node-top{gap:4px}.project-explorer .node-icon{display:none}}

/* Honor the live website's existing parchment theme. */
:root[data-theme="light"] .project-explorer{color-scheme:light;--bg:#e8e0ce;--panel:#f4edda;--panel2:#e9dfc8;--line:rgba(47,76,81,.18);--text:#18252d;--muted:#52636a;--dim:#52636a;--lime:#176b62;--amber:#855008;color:var(--text)}
:root[data-theme="light"] .project-explorer [style*="--c:#a3e67f"]{--c:#176b62!important}
:root[data-theme="light"] .project-explorer [style*="--c:#79c8f2"]{--c:#225e8d!important}
:root[data-theme="light"] .project-explorer [style*="--c:#c2a3f4"]{--c:#72509a!important}
:root[data-theme="light"] .project-explorer [style*="--c:#e5bb72"]{--c:#855008!important}
:root[data-theme="light"] .project-explorer [style*="--c:#e2a284"]{--c:#9a4c31!important}
:root[data-theme="light"] .project-explorer :is(.stat-strip,.inspector-top,.result-card){background:var(--surface)}
:root[data-theme="light"] .project-explorer :is(.node,.segmented,.search-wrap input,.map-filter select,.boundary,.note,.btn,.project-chip,.select-project span,.example-chip,.filter-button,.path,.form-card select,textarea,.badge,.drift-card){background:var(--surface);border-color:var(--line);color:var(--text)}
:root[data-theme="light"] .project-explorer :is(.node.active,.node:hover,.filter-button.active,.project-chip.active,.select-project input:checked+span,.compare-table thead th,.source-table th){background:var(--surface-2);color:var(--text)}
:root[data-theme="light"] .project-explorer .node.active{border-color:var(--c)}
:root[data-theme="light"] .project-explorer :is(.compare-table th:first-child,.compare-table .row-emphasis td){background:var(--surface-2)}
:root[data-theme="light"] .project-explorer :is(.tagline,.node small,.detail-body p,.responsibility-list li,.compare-table td,.source-table td,.overlap-card .rule,.gap-next,.result-card .acceptance,.result-card>p,.form-label,.check-list label,.drift-card p,.selection-label){color:var(--text-2)}
:root[data-theme="light"] .project-explorer :is(.detail-links a,.text-link,.source-table a,.detail-source a,.note a){color:var(--accent)}
:root[data-theme="light"] .project-explorer :is(.note b,.path,.pin-line code,.source-table code){color:var(--text)}
:root[data-theme="light"] .project-explorer .no-match{color:var(--warn);background:var(--surface-2)}
:root[data-theme="light"] .project-explorer .graph{background-color:var(--surface)}
:root[data-theme="light"] .project-explorer .graph .edge{stroke:#7f8b74}
:root[data-theme="light"] .project-explorer .graph .edge.runtime{stroke:var(--accent2)}
:root[data-theme="light"] .project-explorer .graph .edge.focused{stroke:var(--c,var(--accent2))}
:root[data-theme="light"] .project-explorer #toast{background:var(--accent2);color:var(--primary-ink)}

/* Navigation and lens controls share the site's accent, hover, and focus tokens. */
.project-explorer :is(.nav-item,.segmented button){min-height:44px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-2)}
.project-explorer :is(.nav-item,.segmented button):not(.active):hover{background:var(--surface-hover);border-color:var(--line-strong);color:var(--text)}
.project-explorer :is(.nav-item,.segmented button).active{background:color-mix(in srgb,var(--accent2) 12%,var(--surface));border-color:var(--line-accent);color:var(--accent2)}
.project-explorer :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--accent2);outline-offset:3px}
.project-explorer .select-project:has(input:focus-visible) span{outline:2px solid var(--accent2);outline-offset:3px}
.project-explorer .graph-caption,.project-explorer .legend,.project-explorer .adjacent-title,.project-explorer .gap-type,.project-explorer .detail-source,.project-explorer .pin-line{flex-wrap:wrap}
.project-explorer .map-filter{flex-wrap:wrap}
.project-explorer .search-wrap{min-width:180px}
.project-explorer .detail-links a,.project-explorer .path{overflow-wrap:anywhere;max-width:100%}
.project-explorer .segmented{flex-wrap:wrap;max-width:100%}
.project-explorer .node small{overflow-wrap:anywhere}
.project-explorer code{font-size:max(12px,1em)}
.project-explorer .router-layout>*{min-width:0}
.project-explorer .form-card select{min-width:0}
.project-explorer .detail-actions,.project-explorer .gap-card footer{flex-wrap:wrap}
@media(max-width:900px){
  .explorer-snapshot{min-height:44px}
  .project-explorer #explorer-nav{display:none}
  .project-explorer .explorer-view-picker{display:grid;gap:8px;margin-bottom:24px;font-size:12px;color:var(--text-2)}
  .project-explorer .explorer-view-picker select{width:100%;min-height:44px;font-size:14px;color:var(--text);background:var(--surface);border:1px solid var(--line-strong)}
  .project-explorer :is(button,a,select,input[type="search"],.select-project span,.check-list label,.toggle){min-height:44px}
  .project-explorer a{display:inline-flex;align-items:center;max-width:100%;overflow-wrap:anywhere}
  .project-explorer .select-project span{display:flex}
  .project-explorer .map-annotation{display:none}
  .project-explorer .map-annotation-summary{display:block;padding:0 15px 15px;font-size:12px;line-height:1.7;color:var(--muted)}
  .project-explorer .graph-caption{align-items:flex-start}
  .project-explorer .graph-hint{display:none}
  .project-explorer .compare-toolbar .segmented{overflow:visible;flex-wrap:wrap}
  .project-explorer .segmented button{flex:1}
  .project-explorer .detail-source{gap:8px}
  .project-explorer .node strong{font-size:12px}
}
@media(max-width:380px){
  .project-explorer .panel-head .segmented{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .project-explorer .panel-head .segmented button:first-child{grid-column:1/-1}
}

.project-explorer .graph-core {
  position: relative;
  height: 100%;
}

@media (max-width: 700px) {
  .project-explorer .graph {
    box-sizing: content-box;
    padding-bottom: 112px;
  }

  .project-explorer .graph .node[data-project="lab"] {
    top: auto !important;
    bottom: 10px;
    transform: translateX(-50%);
  }
}

.project-explorer .compare-selection-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.project-explorer #inspector { scroll-margin-top: 100px; }
@media (max-width: 760px) {
  .project-explorer .compare-table.compare-pair { min-width: 0; }
  .project-explorer .compare-pair th:first-child { width: 25%; }
  .project-explorer .compare-pair :is(th, td) {
    padding: .55rem .35rem;
    overflow-wrap: anywhere;
  }
}
