@charset "UTF-8";
:root{color-scheme:dark;--bg:#171e20;--panel:#1c2426;--panel-2:#222c2e;--line:#344144;--text:#ecede7;--muted:#a7b5b5;--mint:#b5efc9;--mint-dim:#91c3aa;--amber:#efc77b;--paper:#eceee5;--ink:#253331;--paper-muted:#56655f;--paper-line:#ccd2c8;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-family:var(--sans);font-size:14px;font-weight:400;line-height:1.5;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{ -webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}button:disabled{cursor:default;opacity:.46}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--mint);outline-offset:3px}a{color:inherit}button{transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease}button:hover:not(:disabled){background-color:#344440}button,select,input,summary{border-radius:4px}button{border:1px solid var(--line);background:transparent}input,select{color:var(--text);background:var(--bg);border:1px solid #455458}select{max-width:100%;min-width:0;cursor:pointer}button,summary{min-height:36px}h1,h2,h3,p{margin:0}h1{font-size:30px;font-weight:550;letter-spacing:-1.2px;line-height:1.2}h2{font-size:20px;font-weight:600;letter-spacing:-.5px}h3{font-size:15px;font-weight:650}p{max-width:76ch}.mono,.eyebrow,.key-hint{font-family:var(--mono)}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:500;color:var(--muted)}.subtle{color:var(--muted);font-size:12px}.text-mint{color:var(--mint)}.text-amber{color:var(--amber)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:absolute;left:16px;top:-60px;z-index:100;background:var(--mint);color:var(--ink);padding:12px 18px}.skip-link:focus{top:12px}.app-header{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px;gap:28px;background:#141b1d}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:21px;letter-spacing:-.7px;font-weight:650;line-height:1.2}.brand-light{font-weight:400}.brand svg{width:28px;height:28px;fill:var(--mint);stroke:var(--mint);stroke-width:1.3}.brand small{display:block;font:8px/2 var(--mono);letter-spacing:1.55px;color:var(--muted)}.primary-nav{display:flex;align-self:stretch;gap:2px;margin-left:16px}.primary-nav button{position:relative;border:0;border-radius:0;padding:0 13px;font-size:12px;font-weight:500;color:var(--muted);background:transparent}.primary-nav button:hover{color:var(--text);background:#20292b!important}.primary-nav button[aria-current=page]{color:var(--mint)}.primary-nav button[aria-current=page]:after{content:"";position:absolute;bottom:0;left:13px;right:13px;height:2px;background:var(--mint)}.header-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:12px}.quiet-button{border:0;padding:7px 8px;color:var(--muted)}.quiet-button span{font-size:17px;margin-right:4px}.button{list-style:none;display:flex;gap:18px;align-items:center;border:1px solid #53625f;padding:7px 13px;font-size:12px}.button::-webkit-details-marker{display:none}.export-menu{position:relative}.menu-panel{position:absolute;top:44px;right:0;width:210px;background:var(--panel-2);border:1px solid #53625f;z-index:50;padding:5px;box-shadow:0 10px 30px #0004}.menu-panel button{display:block;text-align:left;width:100%;border:0;padding:10px;font-size:12px}.app-status{display:flex;min-height:70vh;justify-content:center;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:40px}.app-status h1{font-size:26px}.app-status p{color:var(--muted)}.loading-mark{font-size:40px;color:var(--mint)}.workspace{display:grid;grid-template-columns:250px minmax(420px,1fr) 315px;height:calc(100dvh - 112px);min-height:600px}.provider-panel{border-right:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;min-height:0}.provider-topline{display:flex;justify-content:space-between;align-items:center;padding:23px 19px 16px}.provider-topline h2{font-size:12px;font-weight:600;letter-spacing:0}.key-hint{border:1px solid #4a585b;padding:0 6px;font-size:10px;color:var(--muted);border-radius:3px}.search-field{margin:0 14px;position:relative;display:block}.search-field svg{position:absolute;left:11px;top:12px;width:15px;height:15px;fill:none;stroke:var(--muted);stroke-width:1.6}.search-field input{width:100%;height:40px;padding:0 10px 0 33px;font-size:12px}.search-field input::placeholder{color:#a9b3b3;font-size:11px}.filter-label{display:flex;flex-direction:column;gap:5px;font-size:9px;letter-spacing:.6px;color:var(--muted);font-weight:500;min-width:0}.filter-label select{width:100%;padding:7px 24px 7px 9px;height:34px;font-size:11px;letter-spacing:0}.sidebar-category{margin:15px 14px 0}.sidebar-category select{background:var(--panel)}.finder-count{display:flex;align-items:center;justify-content:space-between;padding:19px 17px 10px;font-size:10px;color:var(--muted);gap:8px}.finder-count .mono{font-size:8px;letter-spacing:.7px}.provider-list{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#4c5b5b transparent;padding-bottom:12px}.provider-row{display:flex;position:relative;align-items:center;border-bottom:1px solid #2c383a}.provider-row:has(.provider-button[aria-pressed=true]){background:#2c3937}.provider-button{border:0;border-radius:0;display:flex;align-items:center;text-align:left;gap:11px;padding:13px 16px;width:100%;min-height:64px}.provider-button[aria-pressed=true]{box-shadow:inset 3px 0 var(--mint)}.provider-monogram{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border:1px solid #51625e;color:#d7e4da;background:#26332f;border-radius:5px;font:11px var(--mono);letter-spacing:-.3px}.provider-monogram.pending{background:#2c302d;border-color:#5a5b4d;color:#d6c9a9}.provider-label{flex:1;min-width:0}.provider-label strong{font-size:12px;display:block;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-label small{font-size:10px;color:var(--muted);display:block;padding-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-edge-count{font:10px var(--mono);color:var(--mint);min-width:16px;text-align:right}.provider-edge-count.empty{color:#a7aaa0}.provider-check{width:16px;height:16px;margin:0 0 0 13px;accent-color:var(--mint);cursor:pointer;flex-shrink:0}.provider-row:has(.provider-check) .provider-button{padding-left:10px}.finder-footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:6px;padding:14px 16px;font-size:9px;color:var(--muted)}.finder-footer .status-dot:nth-of-type(2){margin-left:7px}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;flex-shrink:0}.status-dot.reviewed{background:var(--mint)}.status-dot.pending{background:var(--amber)}.cohort-controls{padding:10px 15px 13px;border-bottom:1px solid var(--line);background:#25322f}.cohort-controls p{font-size:11px;color:#c9d6ce;padding-bottom:8px}.button-row{display:flex;gap:7px;flex-wrap:wrap}.small-button{font-size:10px;min-height:29px;padding:4px 9px}.main-panel{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.workspace-heading{padding:24px 28px 21px;display:flex;justify-content:space-between;gap:15px;align-items:flex-end}.workspace-heading .eyebrow{margin-bottom:10px}.workspace-heading h1{font-size:29px}.workspace-heading .heading-description{color:var(--muted);font-size:11px;margin-top:8px;line-height:1.5}.heading-metric{flex-shrink:0;text-align:right;padding-bottom:3px}.heading-metric strong{font:28px/1 var(--mono);font-weight:400;color:var(--mint)}.heading-metric small{display:block;color:var(--muted);font:8px var(--mono);letter-spacing:.5px;margin-top:8px}.breadcrumbs{display:flex;align-items:center;gap:8px;margin:0 0 10px;font:9px var(--mono);color:var(--muted)}.breadcrumbs button{font:inherit;border:0;min-height:20px;padding:0;color:var(--mint)}.filter-bar{padding:13px 22px 14px;display:grid;grid-template-columns:1.15fr 1fr 1fr .75fr auto;gap:10px;border-bottom:1px solid var(--line);border-top:1px solid var(--line);background:#1c2426}.filter-bar .filter-label select{background:#222c2e;border-color:#465355}.reset-button{font-size:10px;white-space:nowrap;border:0;align-self:end;padding:7px 3px;color:var(--muted);height:34px}.reset-button span{font-size:15px;margin-left:4px}.pinned-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 23px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}.pinned-bar button{display:flex;gap:10px;min-height:25px;padding:3px 9px;font-size:10px;border-color:#58685f;color:var(--mint)}.pinned-bar .pin-remove{padding:3px 6px;margin-left:-9px;border-left:0}.view-content{flex:1;min-height:0;min-width:0;overflow:auto;position:relative;scrollbar-width:thin;scrollbar-color:#4c5b5b transparent}.graph-view{height:100%;min-height:350px;display:flex;flex-direction:column}.graph-toolbar{padding:14px 23px;display:flex;gap:12px;justify-content:space-between;align-items:center;min-height:60px}.graph-legend{display:flex;gap:17px;font-size:9px;color:var(--muted);align-items:center;flex-wrap:wrap}.legend-item{display:flex;gap:7px;align-items:center}.legend-line{display:inline-block;width:19px;height:0;border-top:2px solid #9bc4aa}.legend-line.potential{border-color:#d5b676;border-top-style:dashed}.segmented-control{display:inline-flex;border:1px solid #465557;border-radius:4px;padding:2px;flex-shrink:0}.segmented-control button{padding:4px 10px;font-size:10px;border:0;min-height:27px;color:var(--muted)}.segmented-control button[aria-pressed=true]{background:#c2dacb;color:#1e3027}.graph-canvas{flex:1;position:relative;min-height:260px;background-image:radial-gradient(#5263624d .7px,transparent .7px);background-size:19px 19px;overflow:auto;margin:0 13px;border:1px solid #293538;border-radius:4px}.graph-svg{display:block;min-width:650px;width:100%;height:100%;min-height:340px;overflow:visible}.graph-column-label{fill:#a6b8b3;font-family:var(--mono);font-size:8px;letter-spacing:1px}.graph-guide{stroke:#344340;stroke-width:1;stroke-dasharray:2 5}.edge-path{stroke:#65907a;stroke-width:1.2;fill:none;opacity:.75;transition:stroke 160ms ease,opacity 160ms ease}.edge-path.potential{stroke:#c0a263;stroke-dasharray:5 4;opacity:.7}.edge-path.selected{stroke:var(--mint);stroke-width:2.6;opacity:1}.edge-path.selected.potential{stroke:var(--amber)}.edge-hit{stroke:transparent;stroke-width:15;fill:none;cursor:pointer}.edge-group:focus-visible{outline:none}.edge-group:focus-visible .edge-path{stroke:var(--mint);stroke-width:3;opacity:1}.graph-node{cursor:pointer;outline:none}.graph-node .node-body{fill:#25312e;stroke:#5d7667;stroke-width:1;transition:fill 160ms ease,stroke 160ms ease}.graph-node:hover .node-body,.graph-node:focus-visible .node-body{fill:#354a3c;stroke:var(--mint);stroke-width:2}.graph-node.focus .node-body{fill:#b5efc9;stroke:#b5efc9;stroke-width:1.5}.graph-node.selected .node-body{stroke:#e9eddf;stroke-width:2}.graph-node.focus.selected .node-body{stroke:#effcef;stroke-width:2.5}.graph-node.potential .node-body{fill:#302f28;stroke:#897c57}.graph-node .node-name{fill:#e9eee6;font:11px var(--sans);font-weight:550}.graph-node .node-meta{fill:#b2c2b5;font:8px var(--mono)}.graph-node .node-icon{fill:#a9c3b0;font:10px var(--mono)}.graph-node .node-icon-bg{fill:#344b3c;stroke:#637b67;stroke-width:.7}.graph-node.focus .node-name{fill:#1a3124}.graph-node.focus .node-meta{fill:#385544}.graph-node.focus .node-icon-bg{fill:#c9f5d8;stroke:#7ca68a}.graph-node.focus .node-icon{fill:#294735}.graph-node.potential .node-meta{fill:#cfc4a6}.graph-node .node-expand{fill:#cfe1d3;font:10px var(--mono)}.graph-node.focus .node-expand{fill:#264832}.graph-node .pin-dot{fill:var(--amber)}.graph-footer{padding:13px 23px 15px;display:flex;align-items:center;justify-content:space-between;gap:15px}.graph-caption{font-size:10px;line-height:1.6;color:var(--muted);max-width:70ch}.graph-caption strong{font-weight:500;color:#d3ded4}.graph-controls{display:flex;gap:5px;flex-shrink:0}.graph-controls button{min-width:30px;min-height:29px;padding:4px 8px;font:12px var(--mono)}.graph-controls .fit{font:10px var(--sans)}.graph-overflow{padding:9px 23px;color:var(--amber);font-size:11px;border-top:1px solid #5d5339;background:#2a2a23}.selection-tools{display:flex;flex-wrap:wrap;gap:6px;padding:0 23px 13px}.selection-tools button{font-size:10px;min-height:28px;padding:5px 10px}.selection-tools .selection-label{color:var(--muted);font-size:10px;align-self:center;margin-right:4px}.selection-tools .is-pinned{color:var(--amber);border-color:#8a784e}.inspector{background:var(--paper);color:var(--ink);border-left:1px solid #43514b;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#abb7a8 transparent}.inspector *{--muted:var(--paper-muted)}.inspector-header{display:flex;justify-content:space-between;align-items:center;padding:24px 22px 18px;border-bottom:1px solid var(--paper-line);gap:8px}.inspector-header h2{font:10px var(--mono);letter-spacing:1.3px;color:#506158}.inspector-header span{font:9px var(--mono);color:#6e7c72}.inspector-content{padding:23px 22px}.inspector-eyebrow{color:#5b6b60;font:9px var(--mono);letter-spacing:1px;margin-bottom:13px}.inspector h3.entity-title{font-size:25px;line-height:1.2;letter-spacing:-.8px;font-weight:550;margin-bottom:8px;overflow-wrap:anywhere}.inspector .entity-subtitle{font-size:11px;color:#5a695f;line-height:1.6}.inspector .provider-monogram{margin-bottom:14px;background:#dde5d8;color:#3f5c4a;border-color:#afc1ad}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid #a7bfa8;color:#2e5b3e;background:#dce9d7;border-radius:3px;font:9px var(--mono);letter-spacing:.3px;max-width:100%;overflow-wrap:anywhere}.badge.pending{background:#ece3ca;border-color:#c9b87f;color:#675221}.badge.neutral{background:#e2e5dc;border-color:#b8c0b2;color:#566455}.inspector .badge{margin:12px 0 3px}.inspector-section{border-top:1px solid var(--paper-line);padding-top:18px;margin-top:19px}.inspector-section h4{font:9px var(--mono);letter-spacing:1.1px;color:#526557;margin:0 0 10px}.inspector-section p{font-size:11px;line-height:1.65}.inspector-section dl{margin:0}.inspector-section dt{font-size:10px;color:#5a6d60;margin-top:12px}.inspector-section dd{font-size:11px;line-height:1.6;margin:2px 0 0;overflow-wrap:anywhere}.inspector-section li{font-size:11px;line-height:1.7;margin-bottom:6px}.inspector-section ul{margin:0;padding-left:16px}.inspector-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:17px}.inspector button{color:#2e4d39;border-color:#a5b8a7;font-size:10px;min-height:31px;padding:5px 10px}.inspector button:hover:not(:disabled){background:#d3dfcb}.inspector a{color:#295440;overflow-wrap:anywhere}.inspector a:focus-visible,.inspector button:focus-visible{outline-color:#2c6d4d}.inspector .primary-button{background:#284a37;color:#eff4e8;border-color:#284a37}.inspector .primary-button:hover:not(:disabled){background:#355f48}.inspector-stats{display:flex;border-top:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);margin:21px 0 0}.inspector-stat{flex:1;padding:13px 0}.inspector-stat+.inspector-stat{border-left:1px solid var(--paper-line);padding-left:18px}.inspector-stat strong{font:22px var(--mono);color:#365c42}.inspector-stat small{display:block;font-size:9px;color:#647363;margin-top:4px}.source-item{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--paper-line)}.source-item:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}.source-item a{font-size:11px;font-weight:550;line-height:1.6;text-decoration:underline;text-underline-offset:3px}.source-item .source-meta{display:flex;gap:8px;margin:6px 0;align-items:center;flex-wrap:wrap;font:8px var(--mono);color:#617260}.source-item .badge{margin:0;font-size:8px;padding:2px 5px}.source-item p{font-size:10px;color:#53664f;line-height:1.6}.evidence-quote{margin:10px 0 12px;padding:12px 13px;border-left:2px solid #799278;background:#e1e7da;font-size:12px;line-height:1.65}.evidence-quote p{font:12px/1.65 var(--sans)}.relationship-chain{font:11px/1.7 var(--mono);padding-bottom:12px;color:#4d6851;overflow-wrap:anywhere}.relationship-chain span{color:#89977f;padding:0 6px}.scope-warning{padding:11px 12px;background:#e5e3d0;border-left:2px solid #a89759;font-size:10px;line-height:1.7;margin-top:15px;color:#5a563c}.contributing-link{display:block;text-align:left;width:100%;border:0!important;border-radius:0!important;border-bottom:1px solid var(--paper-line)!important;padding:11px 0!important;line-height:1.6}.contributing-link strong{display:block;font-size:11px;font-weight:600}.contributing-link span{display:block;font-size:10px;color:#647360}.table-wrap{overflow:auto;width:100%}.data-table{border-collapse:collapse;width:100%;text-align:left;font-size:11px}.data-table caption{text-align:left;padding:15px 23px;font-size:11px;color:var(--muted)}.data-table th{font:9px var(--mono);letter-spacing:.6px;color:var(--muted);border-bottom:1px solid #4a5958;padding:13px 17px;background:#202a2b;white-space:nowrap;position:sticky;top:0;z-index:2}.data-table td{padding:16px 17px;border-bottom:1px solid #2d3a3c;vertical-align:top;color:#d5ded7;line-height:1.6}.data-table th:first-child,.data-table td:first-child{padding-left:23px}.data-table th:last-child,.data-table td:last-child{padding-right:23px}.data-table tbody tr:hover{background:#23322d}.data-table td .table-main{display:block;font-size:12px;color:var(--text);font-weight:500}.data-table td .table-sub{display:block;font-size:10px;color:var(--muted);margin-top:3px;max-width:30ch}.table-link{border:0;border-radius:0;min-height:24px;padding:0;text-align:left;color:var(--mint)!important;line-height:1.6;text-decoration:underline;text-decoration-color:#6c9178;text-underline-offset:4px}.table-link:hover{background:transparent!important;color:#e0f6e6!important}.data-table .badge{background:#293b2f;color:#b8d7bc;border-color:#57775d;font-size:8px}.data-table .badge.pending{background:#393629;border-color:#7c704d;color:#d9c58f}.data-table .badge.neutral{background:#2c3432;border-color:#59635c;color:#c3cbbd}.catalog-summary,.concentration-summary{display:flex;gap:24px;padding:20px 23px;border-bottom:1px solid var(--line);align-items:center}.summary-number{font:24px var(--mono);font-weight:400;color:var(--mint)}.summary-stat small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.summary-stat.amber .summary-number{color:var(--amber)}.summary-note{font-size:10px;color:var(--muted);margin-left:auto;max-width:29ch;line-height:1.6}.concentration-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 23px 14px;flex-wrap:wrap}.concentration-controls p{font-size:10px;color:var(--muted)}.concentration-table td{padding-top:18px;padding-bottom:18px}.rank-cell{font:10px var(--mono);color:#89a596!important;width:44px}.concentration-name{min-width:150px}.concentration-bar-cell{min-width:150px;width:42%;vertical-align:middle!important}.concentration-bar{height:7px;background:#2f3f37;position:relative;max-width:100%;border-radius:1px}.concentration-fill{height:100%;background:var(--mint-dim);border-radius:1px;min-width:2px}.concentration-value{font:12px var(--mono);white-space:nowrap;color:var(--mint)!important}.concentration-value small{display:block;font:9px var(--sans);color:var(--muted);margin-top:4px}.concentration-footnote{padding:17px 23px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.7}.empty-state{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:240px;padding:38px;gap:12px}.empty-state .empty-mark{font:32px var(--mono);color:#729780}.empty-state h3{font-size:18px;font-weight:500}.empty-state p{font-size:12px;color:var(--muted);max-width:48ch;line-height:1.7}.empty-state button{margin-top:4px;padding:8px 13px;font-size:11px}.provider-list .empty-state{padding:25px 18px;min-height:180px}.provider-list .empty-state h3{font-size:13px}.provider-list .empty-state p{font-size:11px}.methodology{padding:9px 28px 36px;max-width:920px}.method-section{padding:24px 0;border-bottom:1px solid var(--line)}.method-section:last-child{border-bottom:0}.method-number{font:10px var(--mono);color:var(--mint);display:block;margin-bottom:9px;letter-spacing:1px}.method-section h2{font-size:21px;font-weight:500;line-height:1.3;margin-bottom:12px}.method-section p{font-size:12px;line-height:1.8;color:#bdccc3;margin-bottom:9px}.method-section ul{margin:10px 0;padding-left:18px}.method-section li{font-size:12px;color:#bdccc3;line-height:1.8;padding-bottom:4px}.method-section strong{color:#e0e8dc;font-weight:600}.method-section code{font-family:var(--mono);font-size:11px;color:var(--mint)}.method-table{border-collapse:collapse;font-size:11px;width:100%;margin-top:13px}.method-table th{font-weight:500;color:var(--mint);width:130px}.method-table th,.method-table td{text-align:left;padding:12px 13px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}.method-table td{color:#c1cdc4;line-height:1.6}.pipeline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:20px;gap:0;border:1px solid #42564b}.pipeline div{padding:13px 11px;border-right:1px solid #42564b;font-size:10px;color:#d5e4d5}.pipeline div:last-child{border-right:0}.pipeline span{display:block;color:#88a58e;font:9px var(--mono);padding-bottom:7px}.method-note{background:#25382c;border-left:2px solid var(--mint);padding:15px 17px;margin-top:16px}.method-note p{margin:0;color:#d0dfcf}.change-entry{padding:25px 0;border-bottom:1px solid var(--line)}.change-meta{display:flex;gap:15px;align-items:center;margin-bottom:11px;font:10px var(--mono);color:var(--mint)}.change-entry h2{font-size:20px;font-weight:500;margin-bottom:12px}.change-entry p{font-size:12px;color:#bfcec3;line-height:1.8;margin-bottom:10px}.change-metrics{display:flex;gap:24px;flex-wrap:wrap;margin-top:21px}.change-metrics strong{font:20px var(--mono);color:var(--mint)}.change-metrics small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.change-badge{font-size:8px;border:1px solid #587a61;color:#c0d9c3;padding:4px 6px;border-radius:3px}.coverage-strip{height:36px;display:flex;align-items:center;gap:24px;padding:0 22px;border-top:1px solid var(--line);background:#11191a;font-size:9px;color:#aabbb2;white-space:nowrap;overflow:auto;scrollbar-width:none}.coverage-strip strong{font:10px var(--mono);color:#d6e6d8;margin-right:5px;font-weight:400}.coverage-strip .coverage-label{font:8px var(--mono);letter-spacing:1.3px;color:var(--mint)}.coverage-strip .coverage-date{margin-left:auto;font:9px var(--mono);color:#a6b4ac}.coverage-strip .status-dot{margin-right:6px}.coverage-strip button{font-size:9px;border:0;min-height:26px;color:var(--amber);padding:0}.toast{position:fixed;left:50%;bottom:54px;transform:translateX(-50%);z-index:100;background:#d5ebd9;color:#24432c;border:1px solid #90b09a;padding:12px 20px;border-radius:4px;max-width:calc(100vw - 32px);box-shadow:0 10px 30px #0004;font-size:12px}.primary-button{background:var(--mint);border-color:var(--mint);color:#21392b;padding:9px 14px;font-size:12px}.primary-button:hover:not(:disabled){background:#c9f6d8}dialog{background:var(--paper);color:var(--ink);border:1px solid #829582;box-shadow:0 20px 90px #0007;border-radius:6px;padding:30px;width:min(460px,calc(100vw - 28px))}dialog::backdrop{background:#08100eb3}dialog .eyebrow{color:#5d7060;margin-bottom:12px}dialog h2{font-size:25px;margin-bottom:12px;font-weight:550}dialog p{font-size:12px;line-height:1.8;color:#5a6c5e;margin-bottom:17px}dialog label{display:block;font-size:11px;margin:0 0 7px}dialog input{background:#fafaf4;border-color:#a5b7a7;color:#2f4a36;display:block;width:100%;font-size:12px;padding:10px;margin-bottom:15px}.dialog-close{position:absolute;right:12px;top:9px;color:#4e6555;border:0;font-size:25px;min-width:32px;min-height:32px}dialog button:focus-visible,dialog input:focus-visible{outline-color:#2c6d4d}.noscript{padding:30px;position:fixed;inset:76px 0 0;background:var(--bg);z-index:10}.noscript p{margin-top:20px}.result-highlight{color:var(--mint)}
@media (min-width:1600px){.workspace{grid-template-columns:280px minmax(520px,1fr) 355px}.app-header{padding:0 28px;gap:38px}.primary-nav{gap:7px}.primary-nav button{font-size:13px;padding:0 17px}.inspector-content{padding:26px}.inspector-header{padding-left:26px;padding-right:26px}.inspector-section p,.inspector-section dd,.source-item a{font-size:12px}.graph-svg{min-height:420px}.workspace-heading{padding-top:28px;padding-bottom:25px}.graph-toolbar{padding-top:18px;padding-bottom:18px}}
@media (max-width:1250px){.app-header{gap:15px;padding:0 18px}.brand{font-size:19px}.brand small{font-size:7px;letter-spacing:1.1px}.primary-nav{margin-left:0}.primary-nav button{padding:0 9px;font-size:11px}.header-actions{gap:5px}.quiet-button{font-size:0}.quiet-button span{font-size:18px}.workspace{grid-template-columns:215px minmax(360px,1fr) 280px}.provider-button{padding-left:13px;padding-right:13px;gap:8px}.provider-monogram{width:27px;height:27px}.provider-label strong{font-size:11px}.finder-count .mono{display:none}.filter-bar{padding-left:15px;padding-right:15px;gap:7px;grid-template-columns:1fr 1fr 1fr}.filter-bar .filter-label:nth-child(4){display:flex}.reset-button{grid-column:3;text-align:right;display:block}.workspace-heading{padding-left:21px;padding-right:21px}.graph-toolbar{padding:13px 18px}.graph-legend{gap:10px;font-size:8px}.inspector-content{padding:21px 18px}.inspector-header{padding:24px 18px 18px}.inspector h3.entity-title{font-size:23px}.graph-footer{padding-left:18px;padding-right:18px}.graph-caption{font-size:9px}.coverage-strip{gap:17px}.heading-metric{display:none}.graph-svg{min-width:600px}.selection-tools{padding-left:18px;padding-right:18px}}
@media (max-width:1050px){.workspace{grid-template-columns:205px minmax(360px,1fr) 260px}.brand small{display:none}.app-header{height:64px;gap:10px}.brand svg{width:24px;height:24px}.brand{font-size:18px;gap:7px}.primary-nav button{padding:0 8px;font-size:10px}.header-actions .button{font-size:10px;gap:10px;padding:5px 9px}.workspace{height:calc(100dvh - 100px)}.graph-legend{max-width:160px;gap:7px}.inspector-content{padding:19px 16px}.inspector-header{padding:21px 16px 18px}.provider-topline{padding-left:15px;padding-right:15px}.coverage-strip{font-size:8px;gap:14px}.coverage-strip .coverage-label{display:none}.workspace-heading h1{font-size:27px}.workspace-heading .heading-description{font-size:10px}.concentration-summary{gap:20px}.summary-note{display:none}.table-wrap{min-width:0}.data-table td,.data-table th{padding-left:12px;padding-right:12px}}
@media (max-width:900px){.app-header{padding:0 16px;gap:20px;flex-wrap:wrap;height:auto;min-height:108px}.brand{height:52px}.brand small{display:block;font-size:7px}.header-actions{height:52px;order:2}.quiet-button{font-size:11px}.primary-nav{order:3;width:100%;height:44px;gap:12px;margin-top:-8px}.primary-nav button{font-size:12px;padding:0 9px;flex:1}.workspace{grid-template-columns:210px minmax(0,1fr);height:auto;min-height:calc(100dvh - 144px)}.main-panel{min-height:670px}.provider-panel{grid-column:1;grid-row:1 / span 2;max-height:calc(100dvh - 108px);position:sticky;top:0}.inspector{grid-column:2;border-left:0;border-top:1px solid #657464;max-height:620px}.inspector-content{padding:23px;display:block}.inspector-header{padding:20px 23px}.inspector h3.entity-title{font-size:26px}.inspector-section p,.inspector-section dd,.inspector-section li{font-size:12px}.inspector-section{margin-top:22px}.inspector .entity-subtitle{font-size:12px}.workspace-heading{padding:24px}.filter-bar{grid-template-columns:1fr 1fr 1fr;gap:10px}.filter-bar .filter-label:nth-child(4){display:flex}.reset-button{display:block;grid-column:3}.graph-view{min-height:430px}.graph-canvas{min-height:300px}.graph-svg{min-height:320px;min-width:600px}.view-content{min-height:440px;max-height:650px}.graph-legend{max-width:none}.graph-footer{align-items:flex-start}.coverage-strip{position:relative;height:39px;font-size:9px}.coverage-strip strong{font-size:10px}.graph-overflow{font-size:10px}.concentration-summary{gap:30px}.inspector-section .source-item{max-width:650px}}
@media (max-width:620px){.app-header{padding:0 14px;gap:8px;min-height:105px}.brand{font-size:19px}.brand small{display:none}.brand svg{width:25px;height:25px}.header-actions{gap:3px}.quiet-button{font-size:0;padding:7px}.quiet-button span{font-size:20px}.header-actions .button{font-size:11px;min-height:31px}.primary-nav{gap:0;height:43px;overflow-x:auto;justify-content:space-between}.primary-nav button{padding:0 9px;font-size:11px;flex:initial;white-space:nowrap}.primary-nav button:first-child{padding-left:2px}.primary-nav button[aria-current=page]:after{left:6px;right:6px}.workspace{display:flex;flex-direction:column;min-height:0}.provider-panel{position:relative;top:auto;max-height:none;border-right:0;border-bottom:1px solid var(--line)}.provider-topline{padding:14px 16px 10px}.provider-topline h2{font-size:11px}.search-field{margin:0 15px}.search-field input{height:38px;font-size:13px}.search-field input::placeholder{font-size:12px}.sidebar-category{margin:10px 15px 0;display:grid;grid-template-columns:62px 1fr;align-items:center;font-size:10px}.sidebar-category select{height:32px}.finder-count{padding:11px 17px 8px;font-size:10px}.finder-count .mono{display:inline;font-size:8px}.provider-list{max-height:160px;display:grid;grid-template-columns:1fr 1fr;padding-bottom:0;overflow-y:auto}.provider-row{border-right:1px solid var(--line)}.provider-button{min-height:61px;padding:10px 12px;gap:8px}.provider-label strong{font-size:11px}.provider-label small{font-size:9px}.provider-monogram{width:26px;height:26px;font-size:9px}.provider-edge-count{font-size:9px}.finder-footer{padding:8px 16px;font-size:8px}.cohort-controls{padding:9px 15px;display:flex;justify-content:space-between;align-items:center;gap:10px}.cohort-controls p{font-size:10px;padding-bottom:0}.cohort-controls .button-row{flex-shrink:0}.provider-check{width:14px;height:14px;margin-left:8px}.provider-row:has(.provider-check) .provider-monogram{display:none}.main-panel{min-height:530px}.workspace-heading{padding:22px 19px 19px}.workspace-heading h1{font-size:27px}.workspace-heading .heading-description{font-size:11px;max-width:43ch}.workspace-heading .eyebrow{font-size:9px;margin-bottom:9px}.filter-bar{padding:12px 15px;grid-template-columns:1fr 1fr;gap:10px}.filter-label{font-size:9px}.filter-label select{height:34px;font-size:10px}.filter-bar .reset-button{grid-column:1 / -1;height:25px;min-height:25px;padding:0;text-align:left}.graph-toolbar{padding:13px 15px;gap:9px;min-height:58px}.graph-legend{font-size:8px;max-width:180px;gap:5px}.legend-line{width:14px}.segmented-control button{font-size:10px;padding:3px 9px}.graph-canvas{margin:0 9px;min-height:330px}.graph-svg{min-width:600px;min-height:340px}.graph-footer{padding:12px 15px;gap:9px}.graph-caption{font-size:9px;line-height:1.7}.graph-controls{gap:3px}.graph-controls button{padding:3px 5px;min-width:27px}.graph-controls .fit{font-size:9px}.graph-view{min-height:470px}.selection-tools{padding:0 15px 14px;gap:5px}.selection-tools button{font-size:9px;min-height:29px}.selection-tools .selection-label{font-size:9px}.view-content{max-height:680px;min-height:350px;overflow:auto}.inspector{max-height:none;border-left:0;border-top:1px solid #819079}.inspector-header{padding:19px 21px}.inspector-content{padding:22px 21px 28px}.inspector .entity-subtitle{font-size:12px}.inspector-section h4{font-size:10px}.inspector-section dt{font-size:11px}.inspector-section dd,.inspector-section p{font-size:12px}.source-item a{font-size:12px}.source-item p,.source-item .source-meta{font-size:10px}.scope-warning{font-size:11px}.coverage-strip{height:auto;min-height:46px;padding:13px 17px;flex-wrap:wrap;white-space:normal;gap:8px 17px}.coverage-strip .coverage-date{margin-left:0;width:100%;font-size:8px;margin-top:3px}.catalog-summary,.concentration-summary{gap:24px;padding:18px 19px}.summary-number{font-size:23px}.summary-stat small{font-size:9px}.summary-note{display:none}.concentration-controls{padding:17px 19px 13px}.concentration-controls .segmented-control{order:2}.concentration-controls p{font-size:10px}.data-table th{font-size:8px;padding:12px 12px}.data-table td{font-size:10px;padding:14px 12px}.data-table th:first-child,.data-table td:first-child{padding-left:19px}.data-table td .table-main{font-size:11px}.data-table td .table-sub{font-size:9px}.data-table .catalog-category{display:none}.concentration-bar-cell{min-width:90px}.concentration-name{min-width:110px}.concentration-value{font-size:10px}.concentration-table .rank-cell{display:none}.concentration-table td:nth-child(2){padding-left:19px}.concentration-footnote{font-size:10px;padding:15px 19px}.methodology{padding:0 21px 24px}.method-section{padding:23px 0}.method-section h2{font-size:21px}.method-section p,.method-section li{font-size:12px}.pipeline{grid-template-columns:1fr 1fr}.pipeline div:nth-child(2){border-right:0}.pipeline div:nth-child(-n+2){border-bottom:1px solid #42564b}.method-table th{width:98px}.method-table{font-size:10px}.pinned-bar{padding:9px 16px}.toast{bottom:15px;font-size:11px;width:max-content}.empty-state{padding:30px 23px}.change-metrics{gap:20px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.app-header,.provider-panel,.filter-bar,.pinned-bar,.graph-controls,.header-actions,.toast,.selection-tools{display:none!important}.workspace{display:block;height:auto;min-height:0}.main-panel,.view-content,.inspector{height:auto;max-height:none;overflow:visible}.graph-canvas{height:600px}.inspector{break-before:page}.coverage-strip{height:auto;white-space:normal}body{background:#fff;color:#000}}
/* SVG focus follows the actual connection instead of its bounding rectangle. */
.edge-group:focus{outline:none}.edge-group:focus-visible .edge-path{stroke:var(--mint);stroke-width:4;filter:drop-shadow(0 0 3px #b5efc999)}
.graph-node:focus{outline:none}.graph-node:focus-visible .node-body{stroke:var(--mint);stroke-width:3;filter:drop-shadow(0 0 3px #b5efc999)}

/* Relationship encodings are evidence semantics, separate from any future incident overlay. */
:root {
  --relation-named: #9bc4aa;
  --relation-category: #aac0dd;
  --relation-context: #d5b676;
  --relation-history: #b7aaa0;
  --category-surface: #27343e;
  --history-surface: #302d28;
}
.brand { letter-spacing: -.55px; font-size: 20px; }
.brand small { font-size: 7.5px; letter-spacing: 1.6px; }
.brand svg { width: 31px; height: 31px; }
.brand-tip { fill: var(--mint); stroke: none; }
.brand-base { fill: #7cac91; stroke: none; }
.brand-waterline { stroke: #d8e9dd; stroke-width: 1; fill: none; }
.heading-tools { display: flex; flex-direction: column; gap: 9px; align-items: flex-end; flex-shrink: 0; }
.heading-tools .reset-button { height: 25px; min-height: 25px; font-size: 10px; padding: 0 2px; }
.filter-bar { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 11px; }
.filter-label select:disabled { opacity: 1; color: #b5c4ba; background: #26332e; border-style: dashed; cursor: default; }
.direction-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 23px 0; flex-wrap: wrap; }
.direction-bar .table-link { font-size: 10px; color: var(--muted) !important; text-decoration-color: #65756c; }
.direction-bar .segmented-control button { font-size: 11px; padding-left: 13px; padding-right: 13px; }
.graph-toolbar { min-height: 53px; padding-top: 10px; padding-bottom: 11px; flex-wrap: wrap; }
.graph-legend { gap: 13px; }
.legend-line.category { border-color: var(--relation-category); border-top-style: dotted; }
.legend-line.historical { border-color: var(--relation-history); border-top-style: dashed; }
.edge-path.category { stroke: var(--relation-category); stroke-dasharray: 2 5; opacity: .8; }
.edge-path.historical { stroke: var(--relation-history); stroke-dasharray: 8 3 1 3; opacity: .9; }
.edge-path.selected.category { stroke: #d0e3ff; }
.edge-path.selected.historical { stroke: #eee1c9; }
.graph-node.category .node-body { fill: var(--category-surface); stroke: var(--relation-category); stroke-dasharray: 4 3; }
.graph-node.category .node-meta { fill: #bdd1e8; }
.graph-node.category .node-icon-bg { fill: #344a5a; stroke: #7792ab; }
.graph-node.category .node-icon { fill: #d0e0f2; font-size: 16px; }
.graph-node.focus.category .node-body { fill: #c5d9ec; stroke: #ecf2f9; }
.graph-node.focus.category .node-meta { fill: #3d5264; }
.graph-node .node-name { font-size: 11.5px; }
.temporal-notice { padding: 9px 23px; max-width: none; font-size: 10px; color: #d9c4aa; background: var(--history-surface); border-block: 1px solid #625548; }
.badge.category { color: #304e70; background: #dce6f2; border-color: #a4b8cd; }
.data-table .badge.category { color: #c9ddf4; background: #283b4c; border-color: #728da9; }
.data-table td .badge { margin: 0 4px 4px 0; }
.contribution-type { font: 8px/1.8 var(--mono) !important; letter-spacing: .2px; }
.inspector-actions + .subtle { margin-top: 9px; }
.convergence-scope { padding: 0 23px 14px; font-size: 10px; color: var(--muted); max-width: none; }
.convergence-funnel { overflow: auto; border-block: 1px solid var(--line); background: radial-gradient(ellipse at 70% 50%, #29403233, transparent 68%); }
.funnel-svg { display: block; width: 100%; min-width: 780px; }
.funnel-connection .edge-path { stroke-width: 1.25; opacity: .6; }
.funnel-connection:hover .edge-path, .funnel-connection:focus-visible .edge-path { stroke: var(--mint); opacity: 1; }
.funnel-boundary, .funnel-legend { padding: 10px 23px 0; font-size: 10px; line-height: 1.7; color: var(--muted); max-width: none; }
.funnel-boundary { border-top: 1px solid var(--line); }
.funnel-boundary .table-link { font-size: 10px; }
.funnel-legend { padding-top: 4px; padding-bottom: 13px; color: #c0d4c7; }
.convergence-exclusions { padding: 13px 23px; font-size: 10px; color: var(--amber); max-width: none; background: #2b2c24; line-height: 1.7; }
.ecosystem-explainer { display: flex; align-items: center; gap: 20px; padding: 18px 16px; margin-top: 18px; border-block: 1px solid var(--line); background: linear-gradient(180deg, #24312e, #1b292730); }
.ecosystem-explainer svg { width: 100px; height: 112px; flex-shrink: 0; }
.iceberg-tip { fill: #b5efc9; stroke: #cbe9d6; stroke-width: 1; }
.iceberg-base { fill: #3d6654; stroke: #7aa88b; stroke-width: 1; }
.iceberg-facets { fill: none; stroke: #99bea7; stroke-width: .8; }
.ecosystem-explainer .method-number { font-size: 9px; margin-bottom: 7px; }
.ecosystem-explainer p { font-size: 11px; margin-bottom: 0; }
.mechanism-example { margin-top: 19px; border: 1px dashed #62726b; padding: 15px; }
.method-section .mechanism-example .eyebrow { font: 8px/1.6 var(--mono); letter-spacing: .9px; color: #b7c9c0; }
.mechanism-steps { display: grid; grid-template-columns: repeat(4, 1fr); list-style-position: inside; gap: 0; padding: 0; margin: 12px 0; }
.method-section .mechanism-steps li { padding: 10px; border-right: 1px solid var(--line); color: #d0ded5; font-size: 10px; }
.mechanism-steps li:last-child { border-right: 0; }
.method-section .mechanism-example .subtle { font-size: 10px; margin: 0; }
@media (max-width: 1250px) {
  .filter-bar { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px 7px; }
  .filter-label select { font-size: 10px; padding-left: 7px; }
  .direction-bar { padding-left: 18px; padding-right: 18px; }
  .direction-bar .segmented-control button { font-size: 10px; padding-left: 10px; padding-right: 10px; }
  .direction-bar > .table-link { font-size: 9px; }
  .graph-legend { max-width: none; }
}
@media (max-width: 1050px) {
  .filter-bar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .brand { font-size: 17px; }
  .direction-bar { gap: 6px; }
  .concentration-controls { gap: 8px; }
}
@media (max-width: 900px) {
  .brand { font-size: 20px; }
  .filter-bar { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .funnel-svg { min-width: 720px; }
}
@media (max-width: 620px) {
  .brand { font-size: 18px; }
  .brand svg { width: 28px; height: 28px; }
  .filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .heading-tools { padding-top: 3px; }
  .workspace-heading { align-items: flex-start; }
  .workspace-heading h1 { font-size: 26px; overflow-wrap: anywhere; }
  .direction-bar { padding: 13px 15px 0; gap: 10px; }
  .direction-bar .segmented-control button { font-size: 11px; }
  .graph-toolbar { flex-wrap: nowrap; }
  .graph-legend { max-width: 200px; font-size: 8px; gap: 5px 10px; }
  .temporal-notice { padding: 9px 15px; }
  .concentration-controls .segmented-control { order: initial; }
  .convergence-scope, .convergence-exclusions, .funnel-boundary, .funnel-legend { padding-left: 19px; padding-right: 19px; }
  .ecosystem-explainer { padding: 14px 0; gap: 14px; }
  .ecosystem-explainer svg { width: 73px; }
  .mechanism-steps { grid-template-columns: repeat(2, 1fr); }
  .mechanism-steps li:nth-child(2) { border-right: 0; }
  .mechanism-steps li:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}
.error-page { max-width: 42rem; margin: 12vh auto; padding: 2rem; line-height: 1.6; }

/* Launch polish: a quiet, spacious workspace around a stable evidence map. */
:root {
  --motion-fast: 160ms;
  --motion-standard: 240ms;
  --motion-ease: cubic-bezier(.2, .75, .25, 1);
  --line-soft: #2d393b;
  --panel-raised: #263330;
  --paper: #f0f0e6;
  --paper-line: #d2d6c9;
  --paper-muted: #58665b;
}
html { min-width: 320px; scroll-padding-top: 16px; }
body { min-width: 0; -webkit-font-smoothing: antialiased; }
button, input, select, summary { touch-action: manipulation; }
button, summary { min-height: 40px; }
button {
  transition: background-color var(--motion-fast) ease, color var(--motion-fast) ease,
    border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;
}
button:active:not(:disabled) { background-color: #3c5045; }
button:disabled { opacity: .5; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible,
summary:focus-visible, [tabindex]:focus-visible { outline-width: 2px; outline-offset: 4px; }
input, select { transition: border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease; }
input:hover, select:hover { border-color: #7a8d83; }
input:focus, select:focus { border-color: #9ac9a9; }
::selection { color: #12251b; background: #b5efc9; }
.app-header { height: 78px; padding-inline: 24px; gap: 26px; }
.brand { font-size: 21px; letter-spacing: -.7px; gap: 12px; }
.brand svg { width: 32px; height: 32px; }
.brand small { margin-top: 3px; font-size: 7.5px; line-height: 1.6; letter-spacing: 1.75px; }
.primary-nav { margin-left: 9px; gap: 3px; }
.primary-nav button { padding-inline: 14px; font-size: 12px; }
.primary-nav button[aria-current=page]:after { left: 14px; right: 14px; height: 2px; }
.header-actions { gap: 9px; }
.header-actions .quiet-button { font-size: 12px; padding-inline: 9px; }
.header-actions .button { min-height: 40px; padding: 8px 14px; font-size: 12px; }
.menu-panel { top: 47px; border-radius: 5px; padding: 6px; box-shadow: 0 16px 40px #0005; }
.menu-panel button { min-height: 44px; }
.workspace {
  grid-template-columns: 244px minmax(0, 1fr) 330px;
  height: calc(100dvh - 116px);
  min-height: 620px;
}
.workspace > *, .workspace-heading > *, .graph-footer > *, .direction-bar > * { min-width: 0; }
.provider-panel { background: #1b2325; }
.provider-topline { padding: 22px 18px 17px; }
.provider-topline h2 { font-size: 12px; letter-spacing: .1px; }
.search-field { margin-inline: 14px; }
.search-field input { height: 42px; font-size: 12px; padding-left: 35px; background: #161f20; }
.search-field svg { top: 13px; }
.search-field input::placeholder { color: #9baaa6; font-size: 11px; }
.sidebar-category { margin-top: 16px; }
.filter-label { font-size: 10px; font-weight: 500; letter-spacing: .25px; gap: 7px; }
.filter-label select { height: 39px; font-size: 11px; padding: 7px 25px 7px 10px; }
.finder-count { padding: 18px 17px 11px; font-size: 10px; }
.finder-count .mono { font-size: 8px; }
.provider-list { overscroll-behavior-y: contain; scrollbar-gutter: stable; }
.provider-button { min-height: 69px; padding: 13px 15px; gap: 11px; }
.provider-row { border-color: #2c3739; }
.provider-button:hover { background: #25332f !important; }
.provider-row:has(.provider-button[aria-pressed=true]) { background: #293b33; }
.provider-monogram { width: 31px; height: 31px; border-radius: 5px; }
.provider-label strong { font-size: 12px; font-weight: 550; letter-spacing: -.08px; }
.provider-label small { font-size: 10px; color: #a0b0aa; padding-top: 3px; }
.provider-edge-count { font-size: 10px; }
.finder-footer { min-height: 45px; padding: 13px 16px; font-size: 9px; gap: 7px; }
.finder-footer .status-dot:nth-of-type(2) { margin-left: auto; }
.cohort-controls { padding: 12px 14px; }
.cohort-controls p { font-size: 11px; }
.small-button { font-size: 11px; min-height: 36px; padding: 6px 10px; }
.workspace-heading { padding: 27px 28px 24px; align-items: center; gap: 18px; }
.workspace-heading .eyebrow { font-size: 9px; line-height: 1.6; letter-spacing: 1.45px; margin-bottom: 10px; }
.workspace-heading h1 { font-size: clamp(27px, 2.15vw, 35px); font-weight: 550; line-height: 1.15; letter-spacing: -1.2px; overflow-wrap: anywhere; }
.workspace-heading .heading-description { font-size: 12px; line-height: 1.7; margin-top: 10px; max-width: 60ch; }
.heading-tools { gap: 12px; }
.heading-metric strong { font-size: 30px; letter-spacing: -1px; }
.heading-metric small { font-size: 8px; line-height: 1.5; margin-top: 8px; }
.heading-tools .reset-button { font-size: 10px; min-height: 30px; height: auto; }
.filter-drawer { flex: 0 0 auto; border-block: 1px solid var(--line); background: #1c2526; }
.filter-drawer > summary {
  display: flex; align-items: center; gap: 10px; min-height: 45px;
  padding: 10px 25px; color: #bdcbc3; font-size: 11px; border-radius: 0;
  list-style: none; user-select: none;
  transition: background-color var(--motion-fast) ease;
}
.filter-drawer > summary::-webkit-details-marker { display: none; }
.filter-drawer > summary:before { content: '+'; width: 15px; color: var(--mint); font: 15px var(--mono); }
.filter-drawer[open] > summary:before { content: '−'; }
.filter-drawer > summary:hover { background: #26342f; }
.filter-drawer > summary #filter-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; font: 10px var(--mono); color: var(--mint); }
.filter-drawer > summary #filter-count:empty { display: none; }
.filter-drawer .filter-bar { border: 0; padding-top: 1px; padding-bottom: 18px; }
.filter-bar { padding-inline: 24px; gap: 12px; background: transparent; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.filter-bar .filter-label select { background: #222e2d; border-color: #465752; }
.pinned-bar { padding: 9px 25px; font-size: 10px; gap: 8px; }
.pinned-bar button { min-height: 32px; padding: 4px 10px; }
.pinned-bar .pin-remove { min-width: 29px; padding: 4px 6px; }
.view-content { isolation: isolate; }
.graph-view { min-height: 440px; }
.direction-bar { padding: 17px 24px 0; gap: 12px; }
.segmented-control { padding: 3px; border-color: #42574d; background: #182220; border-radius: 5px; gap: 2px; }
.segmented-control button { min-height: 34px; font-size: 11px; padding: 5px 13px; border-radius: 3px; }
.segmented-control button[aria-pressed=true] { background: #c1dfcb; color: #1b3527; box-shadow: 0 1px 2px #0003; }
.direction-bar .segmented-control button { min-height: 36px; font-size: 11px; padding-inline: 13px; }
.direction-bar .table-link { min-height: 32px; font-size: 11px; }
.graph-toolbar { flex: 0 0 auto; min-height: 61px; padding: 12px 24px; gap: 13px; }
.direction-bar, .graph-footer, .selection-tools { flex-shrink: 0; }
.graph-toolbar .graph-legend { flex: 1 1 100%; }
.graph-toolbar .graph-controls { margin-left: auto; }
.graph-legend { gap: 8px 15px; font-size: 10px; line-height: 1.4; }
.legend-item { gap: 7px; }
.legend-line { width: 18px; flex-shrink: 0; }
.graph-canvas {
  min-height: 280px; margin-inline: 15px; border-color: #34433e;
  background-color: #17211f; background-image: radial-gradient(#647d6a45 .7px, transparent .7px);
  background-size: 21px 21px; border-radius: 5px; overscroll-behavior: contain;
  scrollbar-width: thin; scrollbar-color: #586e5e #1a2521;
  box-shadow: inset 0 0 60px #0c151318;
}
.graph-column-label { fill: #a8beb0; font-size: 9px; letter-spacing: 1.25px; }
.graph-guide { stroke: #35483c; opacity: .65; }
.graph-node .node-body { stroke: #647c6b; }
.graph-node .node-name { font-weight: 550; letter-spacing: -.15px; }
.graph-node .node-meta { fill: #b7c9bb; }
.graph-node.selected .node-body { stroke: #edf5e9; stroke-width: 2; }
.edge-path { transition: stroke var(--motion-fast) ease, opacity var(--motion-fast) ease, stroke-width var(--motion-fast) ease; }
.edge-group:hover .edge-path { opacity: 1; stroke-width: 2; }
.graph-footer { padding: 15px 24px 13px; gap: 15px; align-items: center; }
.graph-caption { font-size: 10px; line-height: 1.75; max-width: 77ch; }
.graph-caption strong { color: #d3e0d4; font-weight: 550; }
.graph-controls { border: 1px solid #40564a; padding: 3px; border-radius: 5px; gap: 3px; background: #1d2a24; }
.graph-controls button { min-width: 34px; min-height: 34px; border: 0; font-size: 15px; padding: 4px 9px; }
.graph-controls .fit { min-width: 43px; font: 11px var(--sans); }
.graph-overflow { padding: 11px 24px; font-size: 11px; line-height: 1.7; }
.graph-overflow .table-link { font-size: 11px; min-height: 28px; }
.selection-tools { position: sticky; bottom: 0; z-index: 3; background: var(--bg); border-top: 1px solid var(--line); padding: 10px 24px; gap: 7px; align-items: center; }
.selection-tools .selection-label { font-size: 11px; margin-right: 5px; }
.selection-tools button { min-height: 36px; padding: 7px 11px; font-size: 11px; }
.selection-tools .inspector-jump { margin-left: auto; color: var(--mint); border-color: #71947b; }
.inspector { border-color: #4e6252; background: var(--paper); scroll-padding-top: 80px; }
.inspector-header {
  position: sticky; top: 0; z-index: 3; background: var(--paper);
  padding: 24px 23px 20px; min-height: 64px; border-color: #d0d5c7;
}
.inspector-header h2 { color: #455f4c; font-size: 10px; letter-spacing: 1.4px; }
.inspector-header span { font-size: 9px; color: #5a6d5a; }
.inspector-content { padding: 25px 23px 32px; }
.inspector-eyebrow { font-size: 10px; color: #536b55; letter-spacing: 1px; line-height: 1.6; }
.inspector h3.entity-title { font-size: 28px; letter-spacing: -.9px; line-height: 1.15; margin-bottom: 11px; }
.inspector .entity-subtitle { font-size: 12px; color: #58695b; line-height: 1.7; }
.inspector .provider-monogram { width: 36px; height: 36px; font-size: 12px; margin-bottom: 17px; }
.inspector .badge { font-size: 9px; line-height: 1.5; padding: 5px 7px; margin-top: 13px; }
.inspector-section { padding-top: 21px; margin-top: 23px; border-color: var(--paper-line); }
.inspector-section h4 { color: #4c6350; font-size: 9px; letter-spacing: 1.25px; line-height: 1.6; margin-bottom: 12px; }
.inspector-section p, .inspector-section dd, .inspector-section li { font-size: 12px; line-height: 1.75; }
.inspector-section dt { color: #526a56; font-size: 10px; line-height: 1.6; margin-top: 15px; }
.inspector-section dd { margin-top: 3px; }
.inspector-section li { margin-bottom: 8px; }
.inspector-actions { gap: 8px; margin-top: 20px; }
.inspector button { min-height: 37px; font-size: 11px; padding: 7px 11px; }
.inspector button:active:not(:disabled) { background: #c4d6bb; }
.inspector .map-return { min-height: 34px; font-size: 10px; margin-left: auto; }
.inspector-stats { margin-top: 23px; }
.inspector-stat { padding: 15px 0; }
.inspector-stat strong { font-size: 23px; }
.inspector-stat small { font-size: 10px; line-height: 1.5; }
.source-item { margin-bottom: 18px; padding-bottom: 17px; }
.source-item a { font-size: 12px; line-height: 1.7; text-decoration-color: #82977f; }
.source-item .source-meta { font-size: 9px; line-height: 1.7; gap: 7px; margin-block: 8px; }
.source-item p { font-size: 11px; line-height: 1.7; }
.evidence-quote { background: #e4e9dc; margin-block: 13px 15px; padding: 13px 15px; border-color: #7d9978; }
.evidence-quote p { font-size: 12px; line-height: 1.8; }
.relationship-chain { font-size: 11px; line-height: 1.9; padding-bottom: 14px; }
.scope-warning { padding: 13px 14px; margin-top: 18px; font-size: 11px; line-height: 1.75; background: #e9e6d2; }
.contributing-link { min-height: 50px !important; padding-block: 13px !important; }
.contributing-link strong { font-size: 12px; }
.contributing-link span { font-size: 11px; }
.data-table { font-size: 12px; }
.data-table th { font-size: 9px; padding-block: 15px; line-height: 1.5; }
.data-table td { font-size: 12px; padding-block: 18px; line-height: 1.7; }
.data-table td .table-main { font-size: 12px; font-weight: 550; }
.data-table td .table-sub { font-size: 11px; line-height: 1.7; margin-top: 4px; }
.table-link { min-height: 28px; }
.data-table .badge { font-size: 9px; line-height: 1.5; }
.catalog-summary, .concentration-summary { padding: 23px 25px; gap: 28px; }
.catalog-drill-hint { max-width: none; padding: 0 25px 18px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.graph-drill-hint { color: var(--mint); margin-left: auto; font-size: 10px; }
.selection-boundary { flex-basis: 100%; max-width: none; color: var(--muted); font-size: 11px; line-height: 1.5; }
.summary-stat small { font-size: 10px; }
.summary-note, .concentration-controls p, .convergence-scope,
.convergence-exclusions, .funnel-boundary, .funnel-legend { font-size: 11px; line-height: 1.75; }
.concentration-controls { padding: 19px 25px 15px; }
.convergence-scope { padding-inline: 25px; }
.concentration-footnote { font-size: 11px; line-height: 1.8; }
.methodology { max-width: 940px; margin-inline: auto; padding-inline: 28px; }
.method-section { padding-block: 28px; }
.method-section h2 { font-size: 24px; letter-spacing: -.65px; line-height: 1.3; }
.method-section p, .method-section li { font-size: 13px; line-height: 1.85; }
.method-section h3 { line-height: 1.6; }
.method-table { font-size: 12px; line-height: 1.7; }
.method-section .mechanism-steps li { font-size: 11px; line-height: 1.7; padding: 12px; }
.ecosystem-explainer p { font-size: 12px; line-height: 1.8; }
.coverage-strip { min-height: 38px; height: auto; padding-block: 9px; font-size: 9px; line-height: 1.6; }
.coverage-strip button { min-height: 24px; }
.empty-state { min-height: 260px; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.empty-state h3 { font-size: 18px; line-height: 1.4; letter-spacing: -.3px; }
.empty-state p { font-size: 12px; line-height: 1.8; max-width: 52ch; }
.empty-state .small-button { margin-top: 8px; }
.toast { bottom: 56px; border-radius: 5px; line-height: 1.6; box-shadow: 0 10px 35px #0005; }
dialog { padding: 32px; border-radius: 7px; }
dialog .dialog-close { min-width: 40px; min-height: 40px; top: 8px; right: 8px; }
dialog input { min-height: 44px; }

@media (min-width: 1600px) {
  .workspace { grid-template-columns: 266px minmax(0, 1fr) 365px; }
  .workspace-heading { padding: 30px 32px 27px; }
  .workspace-heading h1 { font-size: 36px; }
  .workspace-heading .heading-description { font-size: 13px; }
  .provider-button { min-height: 72px; padding-inline: 18px; }
  .provider-label strong { font-size: 13px; }
  .inspector-content { padding-inline: 28px; }
  .inspector-header { padding-inline: 28px; }
  .inspector-section p, .inspector-section dd, .inspector-section li { font-size: 13px; }
  .graph-canvas { margin-inline: 19px; }
  .graph-caption, .graph-legend { font-size: 11px; }
}
@media (min-width: 1121px) and (max-width: 1280px) {
  .app-header { padding-inline: 18px; gap: 17px; }
  .brand { font-size: 19px; }
  .brand small { font-size: 7px; letter-spacing: 1.4px; }
  .primary-nav { gap: 0; margin-left: 0; }
  .primary-nav button { padding-inline: 9px; font-size: 11px; }
  .header-actions .quiet-button { font-size: 0; }
  .header-actions .quiet-button span { font-size: 20px; }
  .workspace { grid-template-columns: 220px minmax(0, 1fr) 300px; }
  .workspace-heading, .filter-drawer > summary { padding-inline: 21px; }
  .workspace-heading .heading-description { font-size: 11px; }
  .heading-metric { display: none; }
  .inspector-content { padding-inline: 19px; }
  .inspector-header { padding-inline: 19px; }
  .filter-bar { grid-template-columns: repeat(3, minmax(0, 1fr)); padding-inline: 20px; }
  .direction-bar { padding-inline: 20px; }
  .direction-bar .segmented-control button { padding-inline: 10px; }
  .direction-bar .table-link { font-size: 10px; }
  .graph-toolbar, .graph-footer, .selection-tools { padding-inline: 20px; }
  .graph-legend { font-size: 9px; gap: 7px 10px; }
  .graph-footer { flex-wrap: wrap; }
  .graph-controls { margin-left: auto; }
}
@media (max-width: 1120px) {
  .app-header { min-height: 112px; height: auto; padding: 0 22px; gap: 0 20px; flex-wrap: wrap; }
  .brand { height: 64px; font-size: 21px; }
  .brand small { display: block; font-size: 7.5px; }
  .header-actions { height: 64px; order: 2; }
  .header-actions .quiet-button { font-size: 12px; }
  .primary-nav { width: 100%; order: 3; height: 48px; margin: 0; gap: 16px; align-self: auto; }
  .primary-nav button { flex: 0 1 auto; min-height: 44px; font-size: 12px; padding-inline: 11px; }
  .primary-nav button:first-child { padding-left: 0; }
  .primary-nav button[aria-current=page]:after { left: 10px; right: 10px; }
  .primary-nav button:first-child[aria-current=page]:after { left: 0; }
  .workspace { grid-template-columns: 222px minmax(0, 1fr); height: auto; min-height: calc(100dvh - 150px); }
  .provider-panel { grid-column: 1; grid-row: 1 / span 2; position: sticky; top: 0; height: calc(100dvh - 16px); max-height: 900px; align-self: start; }
  .main-panel { min-height: 730px; }
  .workspace-heading { padding: 27px 25px 24px; }
  .workspace-heading h1 { font-size: 32px; }
  .workspace-heading .heading-description { font-size: 12px; }
  .heading-metric { display: none; }
  .filter-bar { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .filter-drawer > summary { padding-inline: 25px; }
  .graph-view { min-height: 530px; }
  .graph-canvas { min-height: 360px; }
  .view-content { min-height: 0; max-height: 900px; }
  .inspector { grid-column: 2; border-left: 0; border-top: 1px solid #789071; max-height: 760px; }
  .inspector-header { padding: 20px 27px; }
  .inspector-content { padding: 27px; }
  .inspector h3.entity-title { font-size: 30px; }
  .inspector-section p, .inspector-section dd, .inspector-section li { font-size: 13px; }
  .inspector-section .source-item { max-width: none; }
  .coverage-strip { position: relative; flex-wrap: wrap; gap: 7px 20px; padding-inline: 20px; }
  .coverage-strip .coverage-label { display: none; }
  .coverage-strip .coverage-date { font-size: 8px; }
}
@media (max-width: 800px) {
  .workspace { grid-template-columns: 198px minmax(0, 1fr); }
  .provider-button { padding-inline: 12px; gap: 8px; }
  .provider-monogram { width: 28px; height: 28px; font-size: 10px; }
  .provider-label strong { font-size: 11px; }
  .provider-label small { font-size: 9px; }
  .finder-count .mono { display: none; }
  .workspace-heading { padding-inline: 21px; }
  .workspace-heading h1 { font-size: 30px; }
  .filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-inline: 20px; }
  .filter-drawer > summary { padding-inline: 21px; }
  .direction-bar, .graph-toolbar, .graph-footer, .selection-tools { padding-inline: 19px; }
  .direction-bar .segmented-control button { padding-inline: 11px; }
  .graph-legend { font-size: 9px; gap: 7px 11px; }
  .graph-toolbar { flex-wrap: wrap; }
  .graph-footer { flex-wrap: wrap; }
  .graph-controls { margin-left: auto; }
  .inspector-header, .inspector-content { padding-inline: 23px; }
  .concentration-summary, .catalog-summary { gap: 22px; padding-inline: 21px; }
  .summary-note { display: none; }
}
@media (max-width: 720px) {
  .app-header { min-height: 110px; padding-inline: 17px; gap: 0 10px; }
  .brand { height: 62px; font-size: 19px; gap: 9px; }
  .brand svg { width: 29px; height: 29px; }
  .brand small { display: none; }
  .header-actions { height: 62px; gap: 4px; }
  .header-actions .quiet-button { font-size: 0; min-width: 44px; padding: 8px; }
  .header-actions .quiet-button span { font-size: 21px; margin: 0; }
  .header-actions .button { font-size: 11px; min-height: 44px; padding: 8px 11px; gap: 12px; }
  .primary-nav { gap: 0; justify-content: space-between; overflow-x: auto; }
  .primary-nav button { flex: 0 0 auto; min-height: 44px; font-size: 11px; padding-inline: 9px; }
  .primary-nav button[aria-current=page]:after { left: 9px; right: 9px; }
  .workspace { display: flex; flex-direction: column; min-height: 0; }
  .provider-panel { position: relative; top: auto; height: auto; max-height: none; align-self: stretch; border-right: 0; border-bottom: 1px solid var(--line); }
  .provider-topline { padding: 16px 17px 12px; }
  .provider-topline h2 { font-size: 12px; }
  .search-field { margin-inline: 16px; }
  .search-field input { height: 44px; font-size: 14px; }
  .search-field input::placeholder { font-size: 12px; }
  .search-field svg { top: 14px; }
  .sidebar-category { margin: 11px 16px 0; display: grid; grid-template-columns: 66px minmax(0, 1fr); align-items: center; gap: 10px; }
  .sidebar-category select { height: 44px; font-size: 12px; }
  .finder-count { padding: 13px 18px 10px; font-size: 10px; }
  .finder-count .mono { display: inline; font-size: 8px; }
  .provider-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 142px; padding: 0; }
  .provider-row { min-width: 0; border-right: 1px solid var(--line); }
  .provider-row:nth-child(2n) { border-right: 0; }
  .provider-button { min-height: 69px; padding: 12px; gap: 9px; }
  .provider-label strong { font-size: 12px; }
  .provider-label small { font-size: 10px; }
  .provider-monogram { width: 29px; height: 29px; font-size: 10px; }
  .provider-edge-count { font-size: 10px; }
  .finder-footer { display: none; }
  .cohort-controls { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 16px; }
  .cohort-controls p { padding: 0; font-size: 10px; }
  .cohort-controls .button-row { flex-shrink: 0; }
  .provider-check { width: 20px; height: 20px; margin-left: 11px; }
  .provider-row:has(.provider-check) .provider-monogram { display: none; }
  .main-panel { min-height: 590px; }
  .workspace-heading { padding: 25px 21px 23px; align-items: flex-start; gap: 10px; }
  .workspace-heading h1 { font-size: 30px; line-height: 1.15; }
  .workspace-heading .eyebrow { font-size: 9px; margin-bottom: 10px; letter-spacing: 1.1px; }
  .workspace-heading .heading-description { font-size: 12px; line-height: 1.75; max-width: 45ch; }
  .heading-tools { padding-top: 3px; }
  .heading-tools .reset-button { min-height: 44px; font-size: 10px; }
  .filter-drawer > summary { min-height: 48px; padding: 11px 20px; font-size: 12px; }
  .filter-drawer .filter-bar { padding: 4px 19px 19px; gap: 13px 11px; }
  .filter-label { font-size: 10px; gap: 7px; }
  .filter-label select { height: 44px; font-size: 12px; }
  .pinned-bar { padding: 9px 18px; }
  .pinned-bar button { min-height: 44px; font-size: 11px; }
  .pinned-bar .pin-remove { min-width: 36px; }
  .direction-bar { padding: 16px 17px 0; gap: 9px; }
  .segmented-control button, .direction-bar .segmented-control button { min-height: 40px; font-size: 11px; padding: 7px 12px; }
  .direction-bar .table-link { min-height: 36px; font-size: 11px; }
  .graph-toolbar { padding: 12px 18px; gap: 12px; flex-wrap: wrap; }
  .graph-legend { font-size: 9px; max-width: none; gap: 8px 13px; flex: 1 1 200px; }
  .legend-line { width: 15px; }
  .graph-toolbar > .segmented-control { margin-left: auto; }
  .graph-view { min-height: 590px; }
  .graph-canvas { min-height: 300px; margin-inline: 10px; }
  .graph-footer { padding: 14px 18px; gap: 13px; flex-wrap: wrap; }
  .graph-caption { font-size: 10px; line-height: 1.75; }
  .graph-controls { margin-left: auto; }
  .graph-controls button { min-height: 44px; min-width: 44px; font-size: 18px; }
  .graph-controls .fit { font-size: 12px; min-width: 49px; }
  .selection-tools { padding: 0 18px 18px; gap: 8px; }
  .selection-tools .selection-label { font-size: 11px; flex: 1 0 100%; }
  .selection-tools button { min-height: 44px; font-size: 11px; padding-inline: 11px; }
  .selection-tools .inspector-jump { margin-left: 0; }
  .graph-overflow, .temporal-notice { padding: 11px 18px; font-size: 11px; }
  .graph-overflow .table-link { min-height: 40px; }
  .view-content { max-height: none; min-height: 0; }
  .inspector { max-height: none; border-left: 0; border-top: 1px solid #81957a; }
  .inspector-header { padding: 18px 22px; }
  .inspector-header h2 { font-size: 10px; }
  .inspector-content { padding: 25px 22px 36px; }
  .inspector h3.entity-title { font-size: 31px; }
  .inspector .entity-subtitle { font-size: 13px; }
  .inspector-section { margin-top: 25px; padding-top: 22px; }
  .inspector-section h4 { font-size: 10px; }
  .inspector-section dt { font-size: 11px; }
  .inspector-section dd, .inspector-section p, .inspector-section li { font-size: 13px; line-height: 1.85; }
  .inspector button { min-height: 44px; font-size: 12px; padding: 9px 13px; }
  .inspector .map-return { min-height: 44px; font-size: 11px; }
  .source-item a { font-size: 13px; }
  .source-item .source-meta { font-size: 10px; }
  .source-item p { font-size: 12px; }
  .evidence-quote p { font-size: 13px; }
  .scope-warning { font-size: 12px; line-height: 1.8; }
  .coverage-strip { min-height: 48px; padding: 13px 18px; gap: 9px 17px; font-size: 9px; white-space: normal; }
  .coverage-strip .coverage-date { margin-left: 0; width: 100%; font-size: 8px; }
  .coverage-strip button { min-height: 32px; font-size: 10px; }
  .concentration-summary, .catalog-summary { gap: 23px; padding: 21px; flex-wrap: wrap; }
  .summary-number { font-size: 26px; }
  .summary-stat small { font-size: 10px; }
  .concentration-controls { padding: 17px 21px 14px; gap: 12px; }
  .concentration-controls .segmented-control { order: initial; }
  .concentration-controls p { font-size: 11px; }
  .convergence-scope, .convergence-exclusions, .funnel-boundary, .funnel-legend { font-size: 11px; padding-inline: 21px; }
  .data-table th { font-size: 9px; padding: 14px 13px; }
  .data-table td { font-size: 11px; padding: 17px 13px; }
  .data-table td .table-main { font-size: 12px; }
  .data-table td .table-sub { font-size: 10px; }
  .data-table th:first-child, .data-table td:first-child { padding-left: 21px; }
  .data-table .table-link { min-height: 44px; font-size: 12px; }
  .concentration-bar-cell { min-width: 95px; }
  .concentration-name { min-width: 145px; }
  .concentration-value { font-size: 12px; }
  .methodology { padding: 0 22px 28px; }
  .method-section { padding-block: 26px; }
  .method-section h2 { font-size: 24px; }
  .method-section p, .method-section li { font-size: 13px; }
  .method-table { font-size: 11px; }
  .method-table th { width: 103px; }
  .mechanism-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mechanism-steps li:nth-child(2) { border-right: 0; }
  .mechanism-steps li:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .ecosystem-explainer { gap: 15px; padding-inline: 0; }
  .ecosystem-explainer svg { width: 77px; }
  .ecosystem-explainer p { font-size: 12px; }
  .toast { bottom: 16px; width: max-content; font-size: 12px; padding: 12px 16px; }
  .empty-state { padding: 32px 23px; }
}
@media (max-width: 375px) {
  .app-header { padding-inline: 12px; gap: 0 4px; }
  .brand { font-size: 17px; gap: 7px; }
  .brand svg { width: 25px; height: 25px; }
  .header-actions .button { padding-inline: 9px; gap: 8px; }
  .primary-nav button { font-size: 10px; padding-inline: 7px; }
  .provider-button { padding-inline: 9px; gap: 6px; }
  .provider-label strong { font-size: 11px; }
  .provider-label small { font-size: 9px; }
  .workspace-heading { padding-inline: 18px; }
  .workspace-heading h1 { font-size: 28px; }
  .direction-bar .segmented-control button { padding-inline: 10px; }
}
@media (pointer: coarse) {
  button, summary, .small-button, .segmented-control button,
  .direction-bar .segmented-control button, .inspector button { min-height: 44px; }
  input, select, .filter-label select { min-height: 44px; }
  .provider-check { width: 21px; height: 21px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media print {
  .filter-drawer, .inspector-jump, .map-return { display: none !important; }
  .inspector-header { position: static; }
  .workspace { display: block; height: auto; min-height: 0; }
  .view-content { max-height: none; overflow: visible; }
}

/* The phone finder opens on demand, leaving the map within easy reach. */
.finder-body { display: flex; flex: 1; flex-direction: column; min-height: 0; }
#finder-toggle { display: none; }
@media (max-width: 720px) {
  .provider-topline { padding: 8px 17px; min-height: 62px; gap: 10px; }
  .provider-topline .key-hint { display: none; }
  #finder-toggle {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    min-height: 44px; padding: 8px 11px; color: var(--mint); border-color: #536e5b;
    background: #23352b; font-size: 11px;
  }
  #finder-toggle:after { content: '−'; font: 16px var(--mono); }
  #finder-toggle[aria-expanded=false]:after { content: '+'; }
  .provider-panel.is-collapsed .finder-body { display: none; }
  .finder-body { padding-top: 5px; }
  .finder-count { padding-top: 13px; }
  .provider-panel.is-collapsed .provider-topline h2 { color: #a9beb1; }
}
@media print { #finder-toggle { display: none !important; } }
@media (min-width: 1121px) { .workspace { min-height: 0; } }
@media (max-width: 720px) { .selection-tools { position: static; } }

/* Always available, readable disclosure; no consent gate or floating overlay. */
.information-footer { padding: 14px 22px 18px; border-top: 1px solid var(--line); background: #11191a; color: #bdccc3; font-size: 12px; line-height: 1.7; }
.information-footer p { margin: 0 0 5px; max-width: 110ch; }
.information-footer a { display: inline-block; padding-block: 3px; color: var(--mint); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 650px) { .information-footer { padding-inline: 18px; } }

/* Major players: circle area counts documenting providers, with no volume encoding. */
.players-view {
  display: flex; flex-direction: column; gap: 20px; min-width: 0;
  padding: 3px 26px 28px;
}
.players-intro {
  max-width: 74ch; margin: 0; color: #becdc3;
  font-size: 12px; line-height: 1.8;
}
.players-search {
  display: flex; flex-direction: column; gap: 8px; width: min(100%, 390px);
  color: #b1c2b6; font-size: 11px; line-height: 1.5;
}
.players-search input[type=search] {
  display: block; width: 100%; min-width: 0; min-height: 44px;
  padding: 10px 13px; border-color: #526c59; border-radius: 4px;
  color: var(--text); background: #18241e; font-size: 13px;
}
.players-search input[type=search]::placeholder { color: #9fb2a5; opacity: 1; }
.players-status { height: 3.6em; overflow: hidden; margin: -7px 0 0; color: #9fb5a6; font: 10px/1.7 var(--mono); }
.players-status > span { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.players-canvas {
  position: relative; min-width: 0; width: 100%; overflow: hidden;
  border-block: 1px solid #344a3c; background: #17221d;
}
.players-svg {
  display: block; width: 100%; max-width: 100%; height: clamp(340px, 54dvh, 560px);
  overflow: visible;
}
.player-circle { cursor: pointer; outline: none; -webkit-tap-highlight-color: transparent; }
.player-circle .player-disc {
  fill: #2b4434; stroke: #688c70; stroke-width: 1;
  vector-effect: non-scaling-stroke;
  transition: fill 160ms ease, stroke 160ms ease, stroke-width 160ms ease;
}
.player-circle:nth-of-type(4n+2) .player-disc { fill: #324d3b; }
.player-circle:nth-of-type(4n+3) .player-disc { fill: #3b5741; }
.player-circle:nth-of-type(4n+4) .player-disc { fill: #263c30; }
.player-circle .player-name {
  fill: #e1ebdf; font-family: var(--sans); font-weight: 550;
  letter-spacing: -.15px; text-anchor: middle; pointer-events: none; user-select: none;
}
.player-circle .player-count {
  fill: #bdd4be; font-family: var(--mono); font-weight: 400;
  text-anchor: middle; pointer-events: none; user-select: none;
}
.player-circle.player-rank .player-disc { fill: #b5dfbe; stroke: #d0ecd2; }
.player-circle.player-rank .player-name { fill: #173322; }
.player-circle.player-rank .player-count { fill: #365c3e; }
.player-circle:hover .player-disc { stroke: #d9f0dc; stroke-width: 2; fill: #466b4c; }
.player-circle:hover .player-name, .player-circle:hover .player-count { fill: #f0f6e9; }
.player-circle:focus-visible .player-disc { stroke: #f6f5e7; stroke-width: 3; }
.player-circle[aria-pressed=true] .player-disc { fill: #edf0df; stroke: #fffdf1; stroke-width: 2; }
.player-circle[aria-pressed=true] .player-name { fill: #1e3927; }
.player-circle[aria-pressed=true] .player-count { fill: #4d6a50; }
.players-empty {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
  gap: 12px; min-height: 280px; padding: 32px 0;
  color: var(--muted); font-size: 13px; line-height: 1.8;
}
.players-empty h2, .players-empty h3 { color: var(--text); font-size: 20px; font-weight: 550; letter-spacing: -.4px; }
@media (max-width: 1120px) {
  .players-view { padding-inline: 24px; }
  .players-svg { height: clamp(360px, 58dvh, 560px); }
}
@media (max-width: 720px) {
  .players-view { gap: 18px; padding: 0 18px 24px; }
  .players-intro { font-size: 12px; line-height: 1.85; }
  .players-search { width: 100%; font-size: 12px; }
  .players-search input[type=search] { min-height: 46px; font-size: 14px; }
  .players-status { font-size: 10px; line-height: 1.8; }
  .players-canvas { margin-inline: -7px; width: calc(100% + 14px); }
  .players-svg { height: clamp(320px, 47dvh, 420px); }
  .players-empty { min-height: 240px; padding-block: 26px; }
}
@media (prefers-reduced-motion: reduce) {
  .player-circle .player-disc { transition: none; }
}

@media (min-width: 1121px) {
  .players-view { height: 100%; min-height: 440px; gap: 12px; padding-bottom: 18px; }
  .players-intro, .players-search, .players-status { flex-shrink: 0; }
  .players-canvas { flex: 1 1 240px; min-height: 240px; }
  .players-svg { height: 100%; }
}
