:root{color-scheme:dark;--bg:#11151b;--sidebar:#13181f;--surface:#191f27;--surface2:#202833;--surface3:#273140;--line:#2c3541;--line-soft:#242c37;--text:#e7edf4;--muted:#a0adbd;--faint:#8594a6;--accent:#96dfcc;--accent-bg:#203c37;--accent-line:#3e655b;--amber:#e9c28d;--amber-bg:#352d23;--blue:#a5c5f0;--blue-bg:#243449;--violet:#c4b6ed;--violet-bg:#332e45;--danger:#e9b2a9;--shadow:0 22px 85px #0007;--code:#121820;--row-hover:#202933;--row-selected:#233830;--code-fill:#87aab6;--data-fill:#738594;--custom-fill:#b2a18b;--other-fill:#455261;--radius:10px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none;font-size:14px;-webkit-font-smoothing:antialiased}

:root[data-theme=light]{color-scheme:light;--bg:#f5f6f8;--sidebar:#fcfcfd;--surface:#fff;--surface2:#f2f5f7;--surface3:#e8edf1;--line:#dce2e8;--line-soft:#e9edf1;--text:#182432;--muted:#546476;--faint:#627286;--accent:#196d59;--accent-bg:#e5f3ed;--accent-line:#a4c9ba;--amber:#8a5d21;--amber-bg:#f8f0e4;--blue:#365e8f;--blue-bg:#edf3fc;--violet:#705294;--violet-bg:#f1edf8;--danger:#a84837;--shadow:0 22px 85px #172b4626;--code:#f4f6f8;--row-hover:#f5f8f8;--row-selected:#ebf5ef;--code-fill:#5b919b;--data-fill:#9aabb5;--custom-fill:#c5b699;--other-fill:#d4dce2}

*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text)}
button,input,select{font:inherit}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;color:inherit}
button:disabled{opacity:.4;cursor:default}
button{background:none;border:none}
a{color:inherit;text-decoration:none}
svg{display:block;width:18px;height:18px;flex-shrink:0}
[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
input,select{color:var(--text)}
[hidden]{display:none!important}
code,kbd,pre,.mono,.number{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
h1,h2,h3,p{margin:0}
h2{font-size:19px;letter-spacing:-.4px;font-weight:650}
h3{font-size:15px}
strong{font-weight:600}
.dim{color:var(--faint)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
.skip-link{position:fixed;top:8px;left:8px;background:var(--accent);color:var(--bg);padding:12px;z-index:100;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.sidebar{position:fixed;inset:0 auto 0 0;width:218px;background:var(--sidebar);border-right:1px solid var(--line);padding:26px 16px 18px;z-index:20;display:flex;flex-direction:column}
.brand{display:flex;align-items:center;gap:10px;margin:0 12px 32px;font-size:24px;letter-spacing:-.6px;font-weight:680}
.brand-symbol{width:34px;height:36px;color:var(--accent);display:flex;align-items:center}
.brand-symbol svg{width:30px;height:30px}
.brand-sub{display:inline-block;font-size:13px;font-weight:450;letter-spacing:0;color:var(--muted);margin-left:7px}
.app-switch{display:flex;align-items:center;gap:10px;padding:11px 10px;background:var(--surface);border:1px solid var(--line);border-radius:9px;margin-bottom:32px}
.app-monogram{height:33px;width:33px;background:var(--surface3);border:1px solid var(--line);border-radius:8px;font-size:25px;line-height:1;text-align:center;position:relative;font-weight:500;padding-top:0}
.app-monogram>span{position:absolute;right:4px;top:1px;font-size:11px;color:var(--accent)}
.app-switch strong{display:block;font-size:13px}
.app-switch div>span:not(.app-monogram span){font-size:10.5px;color:var(--muted);display:block;margin-top:4px}
.fixture-dot{height:5px;width:5px;border-radius:100%;background:var(--amber);margin-left:auto}
.nav-label{padding:0 14px;margin-bottom:12px;font-size:10px;letter-spacing:1.5px;font-weight:650;color:var(--faint)}
.nav-list{display:flex;flex-direction:column;gap:6px}
.nav-link{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:520;color:var(--muted);padding:11px 13px;border:1px solid transparent;border-radius:7px}
.nav-link svg{width:17px;height:17px}
.nav-link .nav-count{margin-left:auto;font-size:10px;min-width:21px;text-align:center;line-height:20px;color:var(--faint)}
.nav-link:hover{background:var(--surface)}
.nav-link.active{background:var(--accent-bg);border-color:var(--accent-line);color:var(--accent)}
.nav-link.active .nav-count{color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);border-radius:4px}
.sidebar-note{margin:35px 14px 0;font-size:11px;color:var(--muted);line-height:1.7}
.sidebar-note strong{font-size:11.5px;font-weight:550;color:var(--text)}
.sidebar-note p{margin-top:5px}
.side-rule{display:block;width:24px;height:2px;background:var(--line);margin-bottom:14px}
.sidebar-bottom{margin-top:auto;padding-top:35px}
.design-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:11px;padding:10px 7px;border:1px solid var(--line);border-radius:7px}
.small-icon svg{width:14px;height:14px}
.design-button:hover{background:var(--surface2)}
.offline-label{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--faint);font-size:10px;margin-top:15px}
.tiny-dot{width:4px;height:4px;background:var(--muted);border-radius:50%}
.workspace{margin-left:218px}
.masthead{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid var(--line);gap:16px}
.breadcrumbs{display:flex;align-items:center;gap:11px;font-size:12px;color:var(--faint);white-space:nowrap}
.breadcrumbs strong{color:var(--muted);font-weight:450}
.crumb-divider{color:var(--line)}
.top-actions{display:flex;align-items:center;gap:9px}
.icon-button{width:33px;height:33px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:var(--muted);padding:0}
.icon-button:hover{background:var(--surface2);color:var(--text)}
.action-divider{height:17px;border-left:1px solid var(--line);margin:0 3px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 11px;font-weight:520;font-size:12px;border:1px solid var(--line);border-radius:6px;white-space:nowrap;transition:background .15s}
.button svg{width:15px;height:15px}
.button:hover{background:var(--surface2)}
.button.ghost{border-color:transparent;color:var(--muted)}
.button.export{background:var(--surface2);color:var(--text)}
.button.export:hover{background:var(--surface3);border-color:var(--faint)}
.button.subtle{background:var(--surface);color:var(--muted)}
.mobile-brand,.mobile-nav{display:none}
main{max-width:1710px;margin:0 auto;outline:none}
.report-heading{padding:29px 36px 23px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.eyebrow{font-size:10px;letter-spacing:1.5px;color:var(--faint);font-weight:650;line-height:1.5}
.eyebrow-divider{margin:0 7px;color:var(--line)}
.title-line{display:flex;align-items:center;gap:16px;margin:7px 0}
.title-line h1{font-size:42px;letter-spacing:-1.8px;font-weight:620;line-height:1.12}
.fixture-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;border-radius:5px;background:var(--amber-bg);color:var(--amber);border:1px solid color-mix(in srgb,var(--amber) 20%,transparent);padding:4px 7px;font-weight:550}
.fixture-badge svg{width:12px;height:12px}
.report-description{font-size:13px;color:var(--muted);margin-top:9px}
.snapshot-meta{font-size:11px;align-self:flex-end;padding-bottom:3px}
.snapshot-meta>div{display:flex;align-items:center;gap:8px;margin-top:11px}
.meta-label{color:var(--faint);font-size:9px;letter-spacing:1px;width:57px}
.snapshot-meta code{font-size:11px}
.meta-separator{color:var(--faint)}
.target-tag{font-size:10px;background:var(--surface2);padding:3px 5px;border-radius:4px;color:var(--muted)}
.hash-link{font-size:11px;font-family:Consolas,monospace;color:var(--accent);padding:0}
.hash-link:hover{text-decoration:underline}
.fixture-notice{margin:0 36px 20px;padding:10px 12px;display:flex;align-items:center;gap:9px;color:var(--muted);border:1px solid var(--line);border-radius:7px;font-size:11px;background:color-mix(in srgb,var(--surface) 65%,transparent);line-height:1.5}
.fixture-notice>span[data-icon]{color:var(--amber)}
.fixture-notice svg{width:14px;height:14px}
.fixture-notice strong{font-weight:520;color:var(--text)}
.fixture-notice>button{margin-left:auto;font-size:10.5px;color:var(--muted);padding:0;display:flex;align-items:center;gap:3px;white-space:nowrap}
.fixture-notice>button:hover{color:var(--accent)}
.fixture-notice button svg{width:12px;height:12px}
.summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 36px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.summary-item{padding:18px 20px 17px;position:relative;text-align:left;border-right:1px solid var(--line)}
.summary-item:last-child{border:0}
.summary-item.clickable:hover{background:var(--row-hover)}
.summary-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:9px}
.summary-top svg{width:14px;height:14px;color:var(--faint)}
.summary-value{font-size:29px;letter-spacing:-.8px;font-weight:560;line-height:1.16}
.summary-value .unit{font-size:16px;letter-spacing:0;font-weight:450;margin-left:5px;color:var(--muted)}
.summary-sub{font-size:10.5px;color:var(--faint);margin-top:7px}
.summary-sub .accent{color:var(--accent)}
.content-area{padding:29px 36px 0}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}
.section-heading h2{display:flex;align-items:center;gap:8px}
.section-heading p{font-size:12px;line-height:1.6;color:var(--muted);margin-top:6px}
.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:24px;font-family:Consolas,monospace;font-size:10px;font-weight:450;letter-spacing:0;line-height:20px;border:1px solid var(--line);border-radius:5px;color:var(--muted);padding:0 5px}
.subtle-label{font-size:11px;color:var(--faint);white-space:nowrap;display:flex;align-items:center;gap:5px}
.subtle-label svg{width:14px;height:14px}
.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.table-surface{overflow:hidden}
.table-toolbar{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.search-box{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:0 9px;color:var(--faint);min-height:36px;width:350px;max-width:100%}
.search-box:focus-within{border-color:var(--accent-line)}
.search-box svg{width:15px;height:15px}
.search-box input{background:none;border:0;outline:none!important;width:100%;font-size:12px;height:34px;min-width:0}
.search-box input::placeholder{color:var(--faint)}
kbd{font-size:10px;border:1px solid var(--line);border-radius:3px;min-width:17px;text-align:center;line-height:17px;color:var(--faint)}
.toolbar-actions{display:flex;align-items:center;gap:9px}
.metric-picker{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:6px;padding:0 8px 0 10px;min-height:34px;font-size:11px}
.metric-picker>span{color:var(--faint);margin-right:1px}
.metric-picker select{border:0;background:var(--surface);font-size:11px;max-width:142px;padding:7px 2px;color:var(--text);outline-offset:0}
.filter-count{border-radius:3px;background:var(--accent-bg);color:var(--accent);font-size:9px;line-height:16px;min-width:16px}
.filter-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 16px 16px}
.filter-tray label{font-size:10px;color:var(--muted);display:flex;flex-direction:column;gap:6px}
.filter-tray select{width:100%;padding:7px 6px;background:var(--bg);border:1px solid var(--line);border-radius:5px;font-size:11px}
.table-context{display:flex;align-items:center;justify-content:space-between;padding:0 16px 13px;gap:10px}
.scope-tabs{display:flex;align-items:center;gap:5px;overflow:auto}
.scope-tab{padding:5px 8px;font-size:10px;border:1px solid transparent;border-radius:5px;color:var(--faint);white-space:nowrap}
.scope-tab .tab-count{font-size:9px;margin-left:5px;color:var(--faint)}
.scope-tab.active{color:var(--text);background:var(--surface2);border-color:var(--line)}
.scope-tab:hover{color:var(--text)}
.text-button{font-size:11px;color:var(--accent);padding:4px;white-space:nowrap}
.text-button:hover{text-decoration:underline}
.route-scroll{max-height:562px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border-top:1px solid var(--line);position:relative}
.route-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed;min-width:920px}
.route-table thead th{position:sticky;top:0;z-index:2;background:var(--surface2);color:var(--muted);font-size:10px;font-weight:500;text-align:left;height:38px;border-bottom:1px solid var(--line);padding:0 10px;white-space:nowrap}
.route-table th button{font-size:inherit;color:inherit;padding:0;display:inline-flex;align-items:center;gap:4px;min-height:30px}
.sort-mark{display:inline-flex;min-width:10px}
.sort-mark svg{width:11px;height:11px}
.route-table th[aria-sort] button{color:var(--text)}
.order-col{width:42px}
.method-col{width:76px}
.route-col{width:auto}
.declaration-col{width:133px}
.reference-col{width:85px}
.containment-col{width:148px;text-align:right!important}
.size-col{width:132px;text-align:right!important}
.size-col>button{width:100%;justify-content:flex-end}
.open-col{width:35px}
.route-table td{padding:8px 10px;border-bottom:1px solid var(--line-soft);vertical-align:middle;height:62px}
.route-table tr:last-child td{border-bottom:0}
.route-table tr.data-row{cursor:pointer}
.route-table tr.data-row:hover td{background:var(--row-hover)}
.route-table tr.selected td{background:var(--row-selected)}
.registration{color:var(--faint);font:10px Consolas,monospace}
.method{display:inline-flex;align-items:center;justify-content:center;padding:3px 5px;border-radius:4px;min-width:43px;font-size:9px;font-family:Consolas,monospace;font-weight:600;letter-spacing:.2px;border:1px solid color-mix(in srgb,var(--muted) 13%,transparent);color:var(--muted);background:var(--surface2)}
.method-GET{color:var(--blue);background:var(--blue-bg);border-color:color-mix(in srgb,var(--blue) 12%,transparent)}
.method-POST{color:var(--accent);background:var(--accent-bg);border-color:color-mix(in srgb,var(--accent) 12%,transparent)}
.method-PATCH{color:var(--violet);background:var(--violet-bg);border-color:color-mix(in srgb,var(--violet) 12%,transparent)}
.method-DELETE{color:var(--amber);background:var(--amber-bg);border-color:color-mix(in srgb,var(--amber) 12%,transparent)}
.route-link{font:11.5px "SFMono-Regular",Consolas,monospace;letter-spacing:-.13px;text-align:left;padding:0;max-width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.6}
.handler-sub{font:10px Consolas,monospace;color:var(--faint);margin-top:3px;display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.handler-sub svg{width:11px;height:11px;color:var(--faint)}
.declaration{font-size:10px;color:var(--muted);display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
.declaration svg{width:12px;height:12px;color:var(--faint)}
.declaration.unavailable,.declaration.not-declared{color:var(--faint)}
.ref-count{font-size:10px;color:var(--muted);display:inline-flex;align-items:center;gap:4px}
.ref-count svg{width:12px;height:12px;color:var(--faint)}
.size-cell{text-align:right}
.size-value{font:11px Consolas,monospace;letter-spacing:-.2px}
.size-value .size-unit{font-size:9px;color:var(--faint);margin-left:2px}
.size-bar-track{width:76px;height:2px;background:var(--surface3);border-radius:2px;margin-top:7px;margin-left:auto;overflow:hidden}
.size-bar-fill{height:100%;background:var(--code-fill);border-radius:2px}
.size-unknown{font-size:17px;line-height:1;color:var(--faint)}
.size-unknown-label{display:block;font-size:8px;color:var(--faint);margin-top:4px}
.row-chevron{color:var(--faint)}
.row-chevron svg{width:13px;height:13px}
.table-footer{display:flex;justify-content:space-between;gap:15px;padding:11px 16px;border-top:1px solid var(--line);font-size:10px;color:var(--faint)}
.reading-note{display:flex;gap:8px;color:var(--muted);font-size:10.5px;line-height:1.7;margin:15px 0 22px}
.reading-note>span{align-self:flex-start;margin-top:2px;color:var(--faint)}
.reading-note svg{width:14px;height:14px}
.reading-note strong{font-weight:520;color:var(--muted)}
.inline-link{font-size:inherit;display:inline-flex;align-items:center;gap:3px;color:var(--accent);padding:0}
.inline-link:hover{text-decoration:underline}
.inline-link svg{width:11px;height:11px}
.route-bottom-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}
.mini-panel{border-top:1px solid var(--line);padding:18px 0 0}
.mini-title{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--faint);margin-bottom:16px}
.mini-title a{font-size:10px;letter-spacing:0;display:inline-flex;gap:5px;align-items:center;color:var(--muted)}
.mini-title a svg{width:12px;height:12px}
.mini-title a:hover{color:var(--accent)}
.ledger-bar{height:9px;border-radius:3px;display:flex;overflow:hidden;gap:2px}
.ledger-segment{min-width:1px;display:block}
.segment-code{background:var(--code-fill)}
.segment-data{background:var(--data-fill)}
.segment-custom{background:var(--custom-fill)}
.segment-other,.segment-header{background:var(--other-fill)}
svg.ledger-bar{width:100%;display:block;flex-shrink:1}
.ledger-bar .segment-code{fill:var(--code-fill)}
.ledger-bar .segment-data{fill:var(--data-fill)}
.ledger-bar .segment-custom{fill:var(--custom-fill)}
.ledger-bar .segment-other{fill:var(--other-fill)}
.ledger-legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:9px;margin-top:12px;font-size:10px;color:var(--muted)}
.legend-item{display:flex;gap:5px;align-items:center}
.swatch{height:6px;width:6px;display:inline-block;border-radius:2px;flex-shrink:0}
.compact-coverage{display:flex;gap:19px}
.coverage-mini{flex:1}
.coverage-mini .number{font-size:16px;color:var(--text);font-weight:450}
.coverage-mini .number>span{color:var(--faint);font-size:12px}
.coverage-mini .coverage-label{display:block;font-size:10px;color:var(--faint);margin-top:7px}
.coverage-mini .coverage-state{font-size:12px;line-height:19px}
.compact-coverage{flex-wrap:wrap}
.coverage-mini{min-width:95px}
.page-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;color:var(--faint);margin:34px 36px 0;padding:18px 0 22px;border-top:1px solid var(--line)}
.page-footer strong{color:var(--muted);font-weight:500}
.footer-dot{margin:0 8px;color:var(--line)}
.empty-state{padding:58px 20px;text-align:center;color:var(--faint)}
.empty-state>span{margin-bottom:13px}
.empty-state>span svg{width:25px;height:25px}
.empty-state h3{color:var(--text);font-size:14px;margin-bottom:8px}
.empty-state p{font-size:12px;margin-bottom:16px}

/* Secondary inventory views */
.panel-pad{padding:22px}
.panel-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}
.panel-topline h3{font-size:14px;font-weight:550;margin-bottom:6px}
.panel-topline p{font-size:11px;color:var(--muted);line-height:1.6}
.artifact-big{font-size:30px;font-weight:550;letter-spacing:-1px;white-space:nowrap}
.artifact-big span{font-size:15px;letter-spacing:0;color:var(--faint);margin-left:5px}
.ledger-large .ledger-bar{height:20px}
.ledger-table{margin-top:19px;width:100%;border-collapse:collapse;font-size:11px}
.ledger-table td{padding:10px 0;border-bottom:1px solid var(--line-soft)}
.ledger-table td:last-child{text-align:right;font-family:Consolas,monospace;color:var(--muted)}
.ledger-table td:nth-child(2){text-align:right;color:var(--faint);font:10px Consolas,monospace;padding-right:20px}
.ledger-table .total td{border-bottom:0;font-weight:600;padding-top:14px}
.ledger-table .legend-item{font-size:11px}
.evidence-label{display:inline-flex;gap:5px;align-items:center;font-size:9px;color:var(--faint);border:1px solid var(--line);border-radius:4px;padding:3px 6px;white-space:nowrap}
.subsection{margin-top:25px}
.subheading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.subheading h3{font-size:15px;font-weight:550}
.subheading p{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.6}
.table-wrap{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.inventory-table{border-collapse:collapse;width:100%;min-width:680px;font-size:12px}
.inventory-table th{font-size:10px;text-align:left;padding:13px 16px;background:var(--surface2);color:var(--muted);font-weight:500;border-bottom:1px solid var(--line)}
.inventory-table td{padding:14px 16px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
.inventory-table tr:last-child td{border-bottom:0}
.inventory-table .numeric{text-align:right;font:11px Consolas,monospace}
.inventory-table th.numeric{font-family:inherit}
.inventory-table th button{font-size:10px;display:inline-flex;align-items:center;gap:4px;padding:0}
.inventory-table th button svg{width:12px;height:12px}
.resource-name{display:flex;align-items:center;gap:8px}
.resource-icon{height:28px;width:28px;border-radius:6px;background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--faint)}
.resource-icon svg{width:14px;height:14px}
.resource-name button{font:11px Consolas,monospace;text-align:left;padding:0}
.resource-name button:hover{color:var(--accent)}
.secondary{font-size:10px;color:var(--faint);margin-top:5px;line-height:1.5}
.kind-tag{display:inline-flex;align-items:center;border:1px solid var(--line);color:var(--muted);border-radius:4px;line-height:20px;font-size:9px;padding:0 6px;white-space:nowrap}
.inventory-search{margin-bottom:17px;max-width:390px}
.fold-row>td{background:var(--bg);padding:0!important}
.resource-detail{padding:20px 24px;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.resource-detail h4{font-size:10px;letter-spacing:.6px;color:var(--faint);font-weight:550;text-transform:uppercase;margin:0 0 9px}
.resource-detail p{font-size:11px;line-height:1.75;color:var(--muted)}
.code-location{font:10px Consolas,monospace;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
.route-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.route-chip{display:inline-flex;font:9px Consolas,monospace;border:1px solid var(--line);border-radius:4px;padding:5px 7px;color:var(--muted);background:var(--surface)}
.route-chip:hover{border-color:var(--accent-line);color:var(--accent)}
.binding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.binding-card{padding:21px}
.binding-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}
.binding-title{display:flex;gap:9px;align-items:center}
.binding-title h3{font:12px Consolas,monospace}
.binding-card p{font-size:12px;line-height:1.7;color:var(--muted);min-height:42px}
.binding-state{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:17px 0;border-top:1px solid var(--line-soft);padding-top:15px}
.binding-state>div{font-size:10px;color:var(--faint)}
.binding-state span{display:block;color:var(--muted);font-size:11px;margin-top:6px}
.plain-note{padding:13px 16px;background:var(--surface2);border:1px solid var(--line);border-radius:7px;font-size:11px;color:var(--muted);line-height:1.75;display:flex;gap:10px;margin-bottom:20px}
.plain-note svg{width:15px;height:15px;margin-top:2px}
.plain-note p{margin:0}
.two-column{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.kv-list{margin:0}
.kv-row{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line-soft);padding:12px 0;font-size:11px;line-height:1.6}
.kv-row:last-child{border:0}
.kv-row dt{color:var(--faint);flex-shrink:0;max-width:48%}
.kv-row dd{margin:0;color:var(--text);text-align:right;overflow-wrap:anywhere;min-width:0}
.kv-row dd code{font-size:10px;word-break:break-all}
.coverage-line{padding:13px 0;border-bottom:1px solid var(--line-soft)}
.coverage-line:last-child{border:0}
.coverage-line>div{display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:12px}
.coverage-line p{margin-top:7px;font-size:10.5px;color:var(--faint);line-height:1.6}
.coverage-status{font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:3px 5px;white-space:nowrap}
.observations{display:grid;gap:10px}
.observation{padding:18px 20px;display:flex;gap:12px}
.observation>span{margin-top:2px;color:var(--faint)}
.observation h3{font-size:12px;font-weight:550}
.observation p{font-size:11px;color:var(--muted);line-height:1.7;margin-top:7px}
.observation .observation-meta{font:9px Consolas,monospace;color:var(--faint);margin-top:9px}
.details-block{border:1px solid var(--line);border-radius:7px;overflow:hidden;margin-top:17px}
.details-block>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:11px;padding:13px 16px;background:var(--surface)}
.details-block>summary::-webkit-details-marker{display:none}
.details-block>summary::after{content:'+';color:var(--faint);font-size:16px}
.details-block[open]>summary::after{content:'−'}
.details-body{border-top:1px solid var(--line);padding:15px 16px;background:var(--bg)}
.details-body pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px;line-height:1.7;color:var(--muted)}

/* Drawer, evidence details and dialogs */
.drawer-backdrop{position:fixed;inset:0;z-index:39;background:#03081055;backdrop-filter:blur(1px)}
.route-drawer{position:fixed;right:0;top:0;bottom:0;width:min(960px,calc(100vw - 48px));max-width:100%;background:var(--bg);z-index:40;box-shadow:var(--shadow);border-left:1px solid var(--line);display:flex;flex-direction:column;outline:none}
.drawer-topbar{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:var(--surface);border-bottom:1px solid var(--line)}
.drawer-topbar>div{display:flex;align-items:center;gap:3px}
.drawer-content{padding:25px 26px 35px;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.drawer-method-line{display:flex;align-items:center;gap:9px;margin-bottom:13px}
.drawer-method-line .kind-tag{font-size:9px}
.drawer-title{font:20px "SFMono-Regular",Consolas,monospace;line-height:1.4;letter-spacing:-.5px;overflow-wrap:anywhere;margin-bottom:10px}
.drawer-handler{font:11px Consolas,monospace;color:var(--muted);display:flex;gap:7px;align-items:center}
.drawer-handler svg{width:13px;height:13px}
.drawer-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-top:27px;margin-bottom:22px}
.drawer-tab{font-size:11px;color:var(--faint);padding:0 0 12px;border-bottom:2px solid transparent;margin-bottom:-1px}
.drawer-tab.active{color:var(--accent);border-color:var(--accent)}
.detail-label{font-size:10px;font-weight:550;letter-spacing:.6px;color:var(--faint);text-transform:uppercase;margin-bottom:12px}
.detail-section{margin-bottom:25px}
.detail-section p{font-size:11px;line-height:1.75;color:var(--muted)}
.detail-section .kv-row{font-size:11px}
.declaration-card{padding:16px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.declaration-card .declaration{font-size:12px;color:var(--text)}
.declaration-card p{font-size:10.5px;color:var(--faint);margin-top:10px;line-height:1.65}
.step-list{list-style:none;margin:0;padding:0}
.step-list li{display:flex;align-items:center;gap:11px;padding:8px 0;position:relative;font:11px Consolas,monospace;color:var(--muted)}
.step-num{position:relative;font:9px Consolas,monospace;line-height:21px;text-align:center;width:22px;min-width:22px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--faint);z-index:1}
.step-list li:not(:last-child)::after{content:'';position:absolute;left:10px;top:30px;bottom:-9px;width:1px;background:var(--line)}
.step-list li:last-child{color:var(--accent)}
.step-list li:last-child .step-num{background:var(--accent-bg);color:var(--accent);border-color:var(--accent-line)}
.small-note{font-size:10px!important;color:var(--faint)!important;line-height:1.65!important;margin-top:12px!important}
.detail-ref{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid var(--line);border-radius:6px;background:var(--surface);margin-top:7px;min-width:0}
.detail-ref .ref-main{font:11px Consolas,monospace;overflow-wrap:anywhere}
.detail-ref .ref-sub{font-size:9px;color:var(--faint);margin-top:5px}
.detail-ref>button{font-size:10px;color:var(--accent);padding:5px}
.detail-ref>button svg{width:14px;height:14px}
.size-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.size-grid>div{padding:17px;background:var(--surface);border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.size-grid>div:nth-child(2n){border-right:0}
.size-grid>div:nth-child(n+3){border-bottom:0}
.size-grid-label{font-size:10px;color:var(--faint);margin-bottom:8px}
.size-grid-value{font:22px Consolas,monospace;letter-spacing:-.8px}
.size-grid-value .unit{font-size:12px;letter-spacing:0;color:var(--muted);margin-left:5px}
.size-grid-value.size-unavailable{font-family:inherit;font-size:12px;line-height:1.6;letter-spacing:0;color:var(--muted);overflow-wrap:anywhere}
.size-grid{margin:18px 0;grid-template-columns:repeat(2,minmax(0,1fr))}
.size-grid>div{min-width:0}
.metric-details{margin:12px 0;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.metric-details>summary{padding:13px;cursor:pointer;font-size:11px;line-height:1.6}
.measurement-record{padding:16px;border-top:1px solid var(--line)}
.metric-details>.plain-note{margin:12px}
.metric-details>.small-note{padding:0 13px 13px}
.metric-cell .metric-value{font:11px/1.5 Consolas,monospace}
.metric-cell .secondary{font-size:9px;line-height:1.5;overflow-wrap:anywhere}
.resource-expand{font-size:11px;text-align:left;color:var(--text);overflow-wrap:anywhere;max-width:100%}
.resource-expand:hover{color:var(--accent)}
.resource-table .secondary{font-family:inherit;font-size:10px;line-height:1.5;color:var(--faint);margin-top:5px;max-width:180px;margin-left:auto;overflow-wrap:anywhere}
.resource-table .resource-detail{font-size:11px}
.resource-table .resource-detail h3{font-size:12px}
.two-column>*{min-width:0}
.ledger-table td{overflow-wrap:anywhere}
.ledger-table td:first-child{padding-right:12px}
.panel-topline{flex-wrap:wrap}
.size-grid-exact{font:9px Consolas,monospace;color:var(--faint);margin-top:7px;line-height:1.5}
.size-explanation{margin-top:18px}
.size-definition{padding:13px 0;border-bottom:1px solid var(--line-soft)}
.size-definition h4{font-size:11px;font-weight:550;margin:0 0 6px}
.size-definition p{font-size:11px;color:var(--muted);line-height:1.7}
.evidence-record{padding:15px;border:1px solid var(--line);background:var(--surface);border-radius:7px;margin-bottom:12px}
.evidence-group{margin:12px 0;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.evidence-group>summary,.evidence-record>summary{padding:12px;cursor:pointer;overflow-wrap:anywhere;font-size:11px;line-height:1.6}
.evidence-group>summary .secondary{display:block;margin:4px 0 0;font-size:10px;color:var(--muted)}
.evidence-group-title{display:block;font-weight:550}
.evidence-group-records{padding:0 12px 12px}
.evidence-group .evidence-record{padding:0;margin:8px 0 0}
.evidence-record>.kv-list{padding:0 12px 12px}
.evidence-record p{font-size:11px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}
.evidence-record .secondary{font-size:9px}
.source-trail{padding-left:14px;border-left:2px solid var(--line);margin-top:10px}
.source-trail .trail-label{font-size:9px;letter-spacing:.5px;color:var(--faint);margin-bottom:6px}
.source-trail .trail-value{font:11px Consolas,monospace;line-height:1.6;overflow-wrap:anywhere}
.modal-backdrop{position:fixed;inset:0;background:#02070bbb;backdrop-filter:blur(3px);z-index:49}
.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;max-width:860px;width:calc(100% - 48px);max-height:86vh;background:var(--bg);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;outline:none}
.modal-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 26px 20px;border-bottom:1px solid var(--line);background:var(--surface);border-radius:12px 12px 0 0}
.modal-header h2{font-size:22px;margin-top:7px}
.modal-content{padding:23px 26px 28px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.modal-content p{font-size:12px;line-height:1.8;color:var(--muted)}
.modal-content h3{font-size:14px;margin-top:23px;margin-bottom:9px}
.modal-content .lead{font-size:14px;line-height:1.8;color:var(--text)}
.modal-content .plain-note{margin-top:18px}
.raw-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}
.raw-toolbar p{font-size:10px}
.raw-actions{display:flex;gap:7px}
.raw-json{font:10px/1.7 Consolas,monospace;color:var(--muted);padding:19px;background:var(--code);border:1px solid var(--line);border-radius:7px;overflow:auto;margin:0;max-height:53vh;white-space:pre}
.design-principles{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}
.design-principle{padding:15px;background:var(--surface);border:1px solid var(--line);border-radius:7px}
.design-principle>span{font:10px Consolas,monospace;color:var(--accent)}
.design-principle h3{font-size:12px;margin:9px 0 6px}
.design-principle p{font-size:11px}
.design-footer{margin-top:21px;border-top:1px solid var(--line);padding-top:17px;font-size:11px;line-height:1.75;color:var(--muted)}
.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--surface3);color:var(--text);padding:12px 18px;font-size:12px;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:7px;z-index:70;max-width:90vw}
.noscript{position:fixed;inset:20%;z-index:90;background:var(--surface);border:1px solid var(--line);padding:30px;line-height:1.8}
.noscript h2{margin-bottom:18px}

@media(min-width:1500px){.route-col{width:auto}
.route-table{font-size:13px}
.route-link{font-size:12px}
.declaration-col{width:148px}
.reference-col{width:90px}
.size-col{width:145px}
.route-scroll{max-height:620px}
.content-area{padding-top:32px}
.report-heading{padding-top:34px;padding-bottom:26px}
.summary-item{padding:20px 23px}
}

@media(max-width:1170px){.sidebar{width:192px;padding-left:12px;padding-right:12px}
.workspace{margin-left:192px}
.brand{margin-left:9px}
.brand-sub{font-size:11px}
.app-switch{padding:9px 7px}
.app-switch div>span:not(.app-monogram span){font-size:9px}
.sidebar-note{margin-left:10px}
.masthead{padding:0 25px}
.report-heading{padding-left:25px;padding-right:25px}
.fixture-notice,.summary-strip{margin-left:25px;margin-right:25px}
.content-area{padding-left:25px;padding-right:25px}
.page-footer{margin-left:25px;margin-right:25px}
.snapshot-meta{font-size:10px}
.snapshot-meta>div{gap:6px}
.snapshot-meta .meta-label{width:46px;font-size:8px}
.fixture-notice>button{display:none}
.search-box{width:310px}
.metric-picker{padding-left:7px;padding-right:3px}
.summary-item{padding:17px 15px}
.table-toolbar{gap:10px}
.scope-tab{padding-left:6px;padding-right:6px}
.compact-coverage{gap:10px}
.summary-sub{font-size:9.5px}
.route-table{min-width:920px}
.route-bottom-grid{gap:22px}
}

@media(max-width:980px){.sidebar{display:none}
.workspace{margin-left:0}
.mobile-brand{display:inline;color:var(--text);font-size:15px;letter-spacing:-.3px;font-weight:650}
.mobile-brand span{font-size:11px;font-weight:400;color:var(--muted);letter-spacing:0}
.desktop-crumb{display:none}
.mobile-nav{display:flex;gap:6px;padding:10px 22px;border-bottom:1px solid var(--line);overflow:auto;background:var(--sidebar)}
.mobile-nav .nav-link{font-size:11px;padding:7px 10px;gap:6px;white-space:nowrap}
.mobile-nav .nav-link svg{width:14px;height:14px}
.mobile-nav .nav-count{font-size:9px;line-height:16px;min-width:15px}
.masthead{height:60px}
.report-heading{padding-top:23px}
.snapshot-meta{font-size:11px}
.route-scroll{max-height:600px}
.design-button{display:none}
}

@media(max-width:690px){.masthead{padding:0 16px;height:57px;gap:8px}
.breadcrumbs{font-size:10px;gap:8px}
.breadcrumbs strong,.breadcrumbs .crumb-divider:last-of-type{display:none}
.top-actions{gap:4px}
.top-actions .button{padding:7px;width:31px;min-height:31px}
.action-label{display:none}
.icon-button{width:31px;height:31px}
.top-actions .action-divider{margin:0 2px}
.mobile-nav{padding:8px 12px;gap:2px}
.mobile-nav .nav-link{font-size:10px;padding:7px 8px}
.mobile-nav .nav-link .nav-count{display:none}
.report-heading{padding:22px 17px 18px;display:block}
.title-line{gap:12px}
.title-line h1{font-size:37px}
.eyebrow{font-size:9px}
.report-description{font-size:12px;margin-top:8px}
.snapshot-meta{margin-top:18px;padding:0;display:flex;gap:14px;flex-wrap:wrap;font-size:10px}
.snapshot-meta>div{margin-top:0;gap:6px}
.snapshot-meta>div:last-child{display:none}
.snapshot-meta .meta-label{width:auto;font-size:8px;margin-right:4px}
.snapshot-meta code{font-size:10px}
.target-tag{font-size:9px}
.fixture-notice{margin:0 17px 17px;padding:9px 10px;font-size:10px;align-items:flex-start;gap:7px}
.fixture-notice>span[data-icon]{margin-top:2px}
.summary-strip{margin:0 17px;grid-template-columns:1fr 1fr}
.summary-item{padding:14px 16px}
.summary-item:nth-child(2){border-right:0}
.summary-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
.summary-top{font-size:10px;margin-bottom:8px}
.summary-value{font-size:26px}
.summary-value .unit{font-size:14px}
.summary-sub{font-size:9px;margin-top:6px}
.content-area{padding:23px 17px 0}
.section-heading{gap:10px;align-items:flex-start;margin-bottom:14px}
.section-heading h2{font-size:17px}
.section-heading p{font-size:10.5px;max-width:245px}
.subtle-label{font-size:9px;max-width:88px;white-space:normal;line-height:1.6;justify-content:flex-end;text-align:right}
.subtle-label svg{display:none}
.table-toolbar{padding:12px;display:flex;flex-wrap:wrap;gap:10px}
.search-box{width:100%;min-height:35px}
.search-box input{height:33px;font-size:11px}
.toolbar-actions{width:100%;justify-content:space-between}
.toolbar-actions>.button{font-size:11px;padding:6px 9px;min-height:31px}
.metric-picker{font-size:10px;min-height:31px}
.metric-picker select{font-size:10px;padding:6px 2px}
.table-context{padding:0 12px 12px}
.scope-tabs{gap:3px}
.scope-tab{font-size:9px;padding:4px 6px}
.scope-tab .tab-count{display:none}
.route-table{min-width:920px}
.route-scroll{max-height:540px}
.route-table td{height:60px}
.filter-tray{grid-template-columns:1fr 1fr;padding:0 12px 13px;gap:10px}
.table-footer{font-size:9px;padding:10px 12px;gap:8px}
.reading-note{font-size:10px;margin-bottom:20px}
.route-bottom-grid{grid-template-columns:1fr;gap:24px}
.compact-coverage{gap:25px}
.mini-title{font-size:9px}
.page-footer{display:block;margin:27px 17px 0;font-size:9px;padding-bottom:20px;line-height:1.8}
.page-footer>span{display:block}
.page-footer>span+span{margin-top:4px}
.resource-detail{grid-template-columns:1fr;padding:18px}
.two-column,.binding-grid{grid-template-columns:1fr}
.panel-pad{padding:17px}
.panel-topline{gap:13px}
.panel-topline h3{font-size:12px}
.artifact-big{font-size:26px}
.artifact-big span{font-size:12px}
.ledger-legend{font-size:9px;gap:8px}
.panel-topline p{font-size:10px}
.subheading{align-items:flex-start}
.subheading p{font-size:10px}
.subheading h3{font-size:14px}
.subheading .button{font-size:10px}
.inventory-search{max-width:100%}
.binding-card{padding:18px}
.route-drawer{width:100%;border:0}
.drawer-content{padding:22px 20px 30px}
.drawer-topbar{padding:0 17px;min-height:57px}
.drawer-title{font-size:18px}
.drawer-tabs{margin-top:24px}
.size-grid-value{font-size:20px}
.modal{width:calc(100% - 22px);max-height:92vh;border-radius:9px}
.modal-header{padding:18px 19px;border-radius:9px 9px 0 0}
.modal-header h2{font-size:19px}
.modal-content{padding:18px 19px 23px}
.raw-toolbar{align-items:flex-start;flex-direction:column}
.raw-toolbar p{font-size:10px}
.raw-json{font-size:9px;padding:13px;max-height:52vh}
.design-principles{grid-template-columns:1fr}
.design-principle{padding:13px}
.modal-content .lead{font-size:13px}
.plain-note{font-size:10px;padding:11px 12px}
.kv-row{font-size:10px}
.modal-content .kv-row dd code{font-size:9px}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}
}

@media print{body{background:white;color:#111}
.sidebar,.masthead,.mobile-nav,.top-actions,.table-toolbar,.table-context,.page-footer,.drawer-backdrop,.route-drawer,.modal,.modal-backdrop,.toast,.fixture-notice button{display:none!important}
.workspace{margin:0}
.route-scroll{max-height:none!important;overflow:visible!important}
.route-table{min-width:0;font-size:9px}
.route-table th{position:static}
.route-table td{height:45px}
.view[hidden]{display:none!important}
.summary-strip,.surface,.fixture-notice{border-color:#bbb;background:white}
.summary-item,.route-table td,.route-table th{background:white!important;color:#111!important}
.route-link{font-size:9px}
.handler-sub,.declaration{font-size:8px}
.route-col{width:auto}
.route-table{table-layout:auto}
.section-heading,.report-heading{break-after:avoid}
.reading-note{font-size:8px}
.snapshot-meta{font-size:9px}
.content-area{padding-top:20px}
.fixture-badge{color:#555;background:#eee}
.route-bottom-grid{break-inside:avoid}
.size-bar-track{display:none}
}


.size-explanation + .detail-section{margin-top:24px}
.mobile-table-hint{display:none}
.fixture-badge[role=button]{cursor:pointer}
.fixture-badge[role=button]:hover{border-color:var(--amber)}
@media(max-width:690px){.mobile-table-hint{display:block;font-size:9px;color:var(--faint);padding:0 12px 10px;text-align:right}
}


/* Schema structure: comparable but explicitly not code-byte attribution. */
.schema-metric-strip{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 16px}

.schema-metric-strip>div{background:var(--surface);border:1px solid var(--line);padding:12px 17px;border-radius:8px;min-width:132px;display:flex;align-items:baseline;gap:17px}

.schema-metric-label{font-size:10px;color:var(--muted)}

.schema-metric-strip strong{font:18px Consolas,monospace;font-weight:500;color:var(--text)}

.schema-table{min-width:820px;table-layout:auto}

.schema-table td:first-child{min-width:245px;max-width:410px}

.schema-table .schema-sort-button{color:var(--muted);font-size:10px;display:inline-flex;align-items:center;gap:6px;padding:0;white-space:nowrap}

.schema-table .schema-sort-button:hover,.schema-table th[aria-sort=ascending] .schema-sort-button,.schema-table th[aria-sort=descending] .schema-sort-button{color:var(--accent)}

.schema-table .sort-caret{font:12px Consolas,monospace;color:var(--faint)}

.schema-table .schema-expand{display:inline-flex;align-items:center;gap:8px;padding:2px 0;font-size:11px;max-width:100%;text-align:left}

.schema-table .schema-expand:hover{color:var(--accent)}

.schema-table .schema-expand svg{width:13px;height:13px;color:var(--faint)}

.schema-summary{padding-left:21px;max-width:430px}

.schema-row-open td{background:var(--row-selected)}

.schema-byte-value{font:11px Consolas,monospace;white-space:nowrap}

.schema-bar{margin:7px 0 0 auto;height:4px;width:90px;max-width:100%;border-radius:3px;background:var(--surface3);overflow:hidden}

.schema-bar span{display:block;height:100%;background:var(--code-fill);border-radius:3px}

.schema-detail{padding:23px 25px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:35px}

.schema-detail h4{font-size:10px;letter-spacing:.7px;color:var(--faint);font-weight:600;margin:0 0 12px}

.schema-detail .schema-detail-desc{font-size:11px;line-height:1.5;color:var(--muted);margin-bottom:14px}

.schema-property-table{width:100%;border-collapse:collapse;font-size:11px}

.schema-property-table th{font-size:10px;color:var(--faint);text-align:left;padding:9px 10px 9px 0;background:transparent;border-bottom:1px solid var(--line)}

.schema-property-table td{padding:9px 10px 9px 0!important;background:transparent!important;border-bottom:1px solid var(--line-soft)!important;font-size:11px;max-width:none!important}

.schema-property-table code{font-size:10.5px}

.schema-detail .kv-row{font-size:10.5px;padding:10px 0}

.schema-detail .schema-routes-label{margin-top:22px}

.required-key{font-size:10px;color:var(--accent)}

@media(max-width:800px){.schema-detail{grid-template-columns:1fr;gap:23px}
}

@media(max-width:690px){.schema-metric-strip{gap:7px}
.schema-metric-strip>div{flex:1;min-width:95px;display:block;padding:10px}
.schema-metric-strip strong{display:block;margin-top:6px}
}


progress{appearance:none;border:0;height:4px;width:76px;display:block;margin:5px 0 0 auto;background:var(--surface3)}progress::-webkit-progress-bar{background:var(--surface3)}progress::-webkit-progress-value{background:var(--code-fill)}progress::-moz-progress-bar{background:var(--code-fill)}.ledger-sections{display:flex;gap:8px;flex-wrap:wrap}.ledger-sections>span{border-left:3px solid var(--code-fill);padding-left:7px}.record-text{overflow-wrap:anywhere;white-space:pre-wrap}.schema-table .schema-property-table{min-width:0}.source-trail,.snapshot-meta,.ref-main{overflow-wrap:anywhere}.schema-detail pre{max-height:240px;overflow:auto}.inventory-table th{text-align:left}.numeric{text-align:right!important}.section-heading h2{overflow-wrap:anywhere}#app-name{overflow-wrap:anywhere}.app-switch strong{overflow-wrap:anywhere;max-width:130px}.snapshot-meta code{overflow-wrap:anywhere}.summary-value.small{font-size:20px}.inline-list{display:flex;gap:6px;flex-wrap:wrap}.report-description{max-width:650px}.drawer-title{overflow-wrap:anywhere}button.route-link{text-align:left}.schema-expand{overflow-wrap:anywhere;text-align:left}.empty-state{display:block}.table-wrap{overflow:auto}.evidence-record{overflow-wrap:anywhere}.details-body pre,.raw-json{white-space:pre-wrap;overflow-wrap:anywhere}#view-resources details summary{padding:14px;cursor:pointer}#view-resources details>div{padding:0 14px 14px}.schema-detail-desc{line-height:1.6}.route-group-select{max-width:260px}.schema-summary{max-width:450px}.surface.panel-pad{overflow-wrap:anywhere}.snapshot-meta>div{flex-wrap:wrap}.drawer-method-line{flex-wrap:wrap}.route-drawer{max-width:100vw}.route-table .route-link{max-width:100%;overflow-wrap:anywhere}.mobile-table-hint{font-size:12px}@media(max-width:700px){.title-line{flex-wrap:wrap}.snapshot-meta{max-width:100%}.schema-detail{display:block}.schema-detail>div+div{margin-top:20px}.two-column{grid-template-columns:1fr}.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.route-group-select{max-width:100%}.report-heading{min-width:0}}

body.overlay-open{overflow:hidden}
.dispatcher-detail{padding:12px;min-width:0;overflow-wrap:anywhere}
.dispatcher-body>summary{overflow-wrap:anywhere}

/* Helpers reuse the physical ledger; identities stay in disclosure details. */
.helper-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin:20px 0}
.helper-toolbar>.search-box{flex:1;min-width:220px}
.helper-toolbar>label:not(.search-box){display:grid;gap:6px;color:var(--muted);font-size:11px}
.helper-toolbar select{max-width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}
.helper-table{min-width:620px;table-layout:auto}
.helper-table td:first-child{min-width:170px;max-width:290px}
.helper-table .schema-sort-button{padding:0;text-align:left;color:var(--muted);font-size:11px}
.helper-table .schema-expand{text-align:left;overflow-wrap:anywhere}
.helper-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px}
.helper-detail pre{max-height:260px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.helper-detail .details-block{margin-top:18px}
.helper-entry{padding:12px 0;border-bottom:1px solid var(--line-soft);overflow-wrap:anywhere}
.helper-links{padding-left:18px}
.helper-links li{margin:10px 0}
.helper-links .secondary{display:block;margin-top:4px}
.helper-total-note{flex-basis:100%;margin:0}
.helper-toolbar>.helper-mobile-sort{display:none!important}
@media(max-width:700px){
.helper-detail{grid-template-columns:1fr;padding:16px}
.helper-toolbar{align-items:stretch}
.helper-toolbar>.search-box{flex-basis:100%;min-width:0}
.helper-toolbar>label:not(.search-box){flex:1;min-width:0}
.helper-toolbar>.helper-mobile-sort{display:grid!important;flex-basis:100%}
.helper-table,.helper-table tbody,.helper-table tr,.helper-table td{display:block;min-width:0;width:100%}
.helper-table thead{display:none}
.helper-table tr.helper-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}
.helper-table .helper-row td:first-child{grid-column:1/-1;min-width:0;max-width:none}
.helper-table .helper-row td{text-align:left!important;overflow-wrap:anywhere}
.helper-table .helper-row td::before{content:attr(data-label);display:block;font:10px Inter,Arial,sans-serif;color:var(--muted);margin-bottom:7px}
.helper-table td[colspan]{padding:0}
}

/* Entry references remain visibly actionable in lists and identity details. */
.entry-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.entry-link:hover{text-decoration-thickness:2px}

/* Compact rows retain adjacent measurement qualifications and entry links. */
.route-identity>.secondary{margin-top:4px}
.route-identity .entry-link{font-size:10px}
.route-table .route-reference-counts,.route-table .route-behavior{font-size:10px;line-height:1.6}
.route-table .declaration{white-space:normal;line-height:1.5}
.route-open{display:inline-flex;align-items:center;justify-content:center;min-height:32px;width:100%}
.drawer-facts-grid>*{min-width:0}
@media(min-width:1000px){
  .drawer-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
  .route-drawer .size-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .route-drawer .size-grid>div{border-bottom:0;border-right:1px solid var(--line)}
  .route-drawer .size-grid>div:last-child{border-right:0}
}

/* Build metadata stays compact; native disclosure exposes the full invocation. */
.build-summary{margin:18px 36px 0;padding:16px 20px}
.build-summary h2{font-size:14px;margin:0 0 12px}
.build-summary>.kv-list{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 24px}
.build-summary>.kv-list .kv-row{display:block;border:0;padding:0}
.build-summary>.kv-list dt{font-size:10px}
.build-summary>.kv-list dd{margin:3px 0 0;font-size:12px}
.build-summary .small-note{margin:12px 0 0}
@media(max-width:1100px){.build-summary{margin-left:25px;margin-right:25px}}
@media(max-width:640px){.build-summary>.kv-list{grid-template-columns:repeat(2,minmax(0,1fr))}.build-summary{margin-left:16px;margin-right:16px;padding:14px}}

/* Authored analytics remains a single-column drill-down on narrow screens. */
.analytics-links{padding-left:20px;display:grid;gap:12px;overflow-wrap:anywhere}
.analytics-filters{display:flex;flex-wrap:wrap;gap:16px}
.analytics-filters label{display:grid;gap:6px;font-size:12px;min-width:0}
.analytics-filters select{max-width:100%}
#view-handlers .details-block{padding:12px 0;overflow-wrap:anywhere}
#view-handlers .details-block>summary{cursor:pointer}
#view-handlers .step-list .details-block{min-width:0}

/* Secondary report sections stay available without competing execution catalogs. */
.report-sections { margin-top: 12px; }
.report-sections > summary { cursor: pointer; padding: 10px 12px; font-size: 12px; color: var(--muted); }
#explorer-return:not(:empty) { margin-bottom: 16px; }
#entry-point-list .evidence-label { margin-right: 10px; }
#entry-point-list li { padding: 10px 0; }
@media (max-width: 760px) { .mobile-nav .report-sections { margin: 0; flex: 0 0 auto; } }

/* VIS-10: shared inventory controls and dense, scan-friendly records. */
.inventory-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}
.view-switch{display:inline-flex;flex-shrink:0;gap:3px;border:1px solid var(--line);padding:3px;border-radius:99px;background:var(--bg)}
.view-switch .view-mode{padding:7px 16px;border-radius:99px;font-size:12px;min-height:32px;color:var(--muted)}
.view-switch .view-mode.active{background:var(--surface3);color:var(--text);box-shadow:0 0 0 1px var(--line)}
.inventory-toolbar{display:flex;align-items:flex-end;gap:16px;padding:16px;flex-wrap:wrap}
.inventory-toolbar>.search-box{flex:1;min-width:220px;max-width:none}
.inventory-toolbar .analytics-filters{gap:12px}
.analytics-filters select{min-height:36px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--text);padding:6px 30px 6px 10px;font:inherit}
.inventory-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 12px;flex-wrap:wrap}
.inventory-pagination p{margin:0}
.compact-route-table{min-width:780px}
.compact-route-table th{padding:10px 12px;white-space:nowrap}
.compact-route-table td{padding:8px 12px;height:39px;vertical-align:middle}
.compact-route-table tr:hover td{background:var(--row-hover)}
.compact-route-table tr.selected td{background:var(--row-selected)}
.compact-route-table td:nth-child(2){min-width:200px;max-width:430px;font-family:Consolas,monospace}
.compact-route-table .route-source{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px}
.compact-route-table .method{font-size:10px}
.binding-inventory-table{min-width:540px}
.method-PUT{color:var(--violet);background:var(--violet-bg)}
.method-OPTIONS,.method-HEAD{color:var(--muted);background:var(--surface3)}
.asset-groups{display:grid;gap:12px;margin:16px 0}
.asset-group{border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.asset-group>summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px;cursor:pointer}
.asset-group summary strong{font-size:13px}.asset-group summary span{color:var(--muted);font-size:12px}
.asset-overview{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;font-size:11px;color:var(--muted)}
.asset-overview a{border:1px solid var(--line);border-radius:6px;padding:8px 10px}
@media(max-width:700px){.inventory-heading{gap:0;margin-bottom:16px}.inventory-heading .section-heading{margin-bottom:12px}.inventory-toolbar>.search-box{flex-basis:100%;min-width:0}.inventory-toolbar .analytics-filters{width:100%}.inventory-toolbar .analytics-filters label{flex:1}.inventory-pagination{align-items:flex-start}.inventory-pagination .atlas-controls{gap:6px}}

.compact-route-table td:nth-child(2){min-width:340px}.compact-route-table td:nth-child(2) a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:480px}
@media(max-width:760px){#view-atlas .view-switch .view-mode{font-size:11px;padding:6px 10px;min-height:28px}}

.asset-group>summary::before{content:'▸';color:var(--muted)}.asset-group[open]>summary::before{content:'▾'}.asset-group>summary strong{flex:1}

.compact-route-table{table-layout:fixed;min-width:1000px}.compact-route-table th:nth-child(1){width:90px}.compact-route-table th:nth-child(2){width:38%}.compact-route-table th:nth-child(3){width:24%}.compact-route-table th:nth-child(4){width:75px}.compact-route-table th:nth-child(5){width:115px}.compact-route-table th:nth-child(6){width:100px}.compact-route-table td:nth-child(2) a{max-width:100%}
.binding-inventory-table{table-layout:auto;min-width:540px}.binding-inventory-table th:nth-child(n){width:auto}.binding-inventory-table td:nth-child(2){min-width:0;max-width:none;font-family:inherit}

/* Report-only exploration surfaces. */
.atlas-workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;margin-top:16px;align-items:start}
.atlas-main{min-width:0}.atlas-main>h3{margin:18px 0 12px}.atlas-selection{display:grid;grid-auto-rows:max-content;gap:12px;min-width:0}.atlas-selection h4{font-size:12px;margin:8px 0 0;color:var(--muted)}
.atlas-controls,.atlas-crumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.atlas-crumbs{font-size:12px}.atlas-crumbs .text-button{max-width:100%;overflow-wrap:anywhere}
.atlas-viewport{height:460px;max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:9px;background:var(--bg);overscroll-behavior:contain;touch-action:pan-x pan-y}
.atlas-viewport>.atlas-svg{width:auto;height:auto;max-width:none;display:block;user-select:none}
.atlas-edge{fill:none;stroke:var(--violet);stroke-width:1.5;opacity:.5}.atlas-edge.atlas-ancestry{stroke:var(--accent);stroke-width:2.5;opacity:1}
.atlas-node{cursor:pointer}.atlas-node rect{fill:var(--surface);stroke:var(--line);stroke-width:1.5}.atlas-node.mount rect{stroke:var(--violet)}.atlas-node.middleware rect{stroke:var(--accent-line)}
.atlas-node:hover rect,.atlas-node:focus rect{stroke:var(--accent);stroke-width:3}.atlas-node.selected rect{fill:var(--accent-bg);stroke:var(--accent);stroke-width:2.5}.atlas-node:focus{outline:none}
.atlas-node text{pointer-events:none;fill:var(--text);font-size:12px}.atlas-node .atlas-node-title{font-weight:650}.atlas-node .atlas-node-source{fill:var(--muted);font-size:11px}.atlas-node .atlas-node-hint{fill:var(--muted);font-size:10px}
.atlas-table-scroll{overflow:auto;max-height:430px}.atlas-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.atlas-table th,.atlas-table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.atlas-table th{background:var(--surface2);position:sticky;top:0}.atlas-table a{color:var(--blue)}.atlas-table td:nth-child(2){min-width:190px}.atlas-active{background:var(--accent-bg)}
/* Explorer is a report-contained window, never the native fullscreen API. */
body.atlas-expanded{overflow:hidden}
body.atlas-expanded>.sidebar,body.atlas-expanded>.skip-link,body.atlas-expanded .workspace>.masthead,body.atlas-expanded .workspace>.mobile-nav,body.atlas-expanded #main>:not(.content-area){display:none}
body.atlas-expanded #view-atlas{position:fixed;inset:0;z-index:35;background:var(--bg);overflow:hidden;padding:0}
.atlas-toolbar{position:absolute;inset:10px 12px auto;display:flex;align-items:center;justify-content:space-between;gap:8px;height:40px;z-index:4}
.atlas-toolbar>strong{font-size:14px}.atlas-toolbar .atlas-controls{margin:0;flex-wrap:nowrap;gap:6px}
.atlas-toolbar button[aria-pressed=true],.binding-picker button[aria-pressed=true]{color:var(--accent);background:var(--accent-bg);border-color:var(--accent)}
#view-atlas .button{padding:8px 10px;font-size:12px;white-space:nowrap;min-height:36px}
#view-atlas .atlas-workspace,#binding-workspace{position:absolute;inset:0;margin:0;display:block}
#view-atlas .atlas-main{position:absolute;inset:0;min-height:0;padding:0}
.atlas-search-row{position:absolute;top:60px;left:12px;right:12px;display:flex;gap:12px;align-items:center;height:36px}
.atlas-search-row>input{width:300px;max-width:50%;min-width:0;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:12px;height:36px}
.atlas-search-row select{max-width:45%;min-width:0;height:36px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:4px 8px}
.atlas-crumbs{margin:0;flex-wrap:nowrap;overflow:auto;white-space:nowrap;max-width:65%;gap:6px}.atlas-crumbs button{white-space:nowrap}
.atlas-main>.atlas-controls{position:absolute;top:104px;left:12px;right:12px;margin:0;flex-wrap:nowrap;overflow:auto;height:36px;gap:6px;scrollbar-width:thin}
#view-atlas .atlas-viewport{position:absolute;inset:150px 12px 38px;height:auto;min-height:0;max-width:none;border-radius:10px;background:var(--surface2)}
#atlas-count,#binding-summary{position:absolute;bottom:5px;left:12px;right:115px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}
.atlas-status{position:absolute;bottom:43px;left:22px;right:22px;margin:0;pointer-events:none;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--surface2)}
#view-atlas .atlas-selection{position:absolute;z-index:5;right:24px;top:162px;width:330px;max-width:calc(100% - 48px);max-height:calc(100dvh - 212px);overflow:auto;display:grid;gap:10px;align-content:start;box-shadow:0 8px 32px #0002;border:1px solid var(--accent-line);border-radius:12px;padding:16px;font-size:12px}
#view-atlas[data-inspector=false] .atlas-selection{display:none}
.atlas-selection h3{font-size:15px;line-height:1.5;margin:0}.atlas-selection p{margin:0}.atlas-selection>.button:first-child{justify-self:end}.atlas-selection .record-text{overflow-wrap:anywhere}
.atlas-table-disclosure,.binding-reading-note{position:absolute;z-index:6;bottom:4px;right:12px;max-width:calc(100% - 24px);font-size:12px;background:var(--surface);border:1px solid var(--line);border-radius:9px}
.atlas-table-disclosure>summary,.binding-reading-note>summary{cursor:pointer;padding:6px 12px;min-height:28px}
.atlas-table-disclosure[open],.binding-reading-note[open]{width:720px;max-height:65dvh;overflow:auto;padding:8px 12px;box-shadow:0 8px 32px #0003}
.atlas-table-disclosure .atlas-controls{position:static}.atlas-table-scroll{max-height:40dvh}.binding-reading-note .atlas-crumbs{max-width:100%;white-space:normal;flex-wrap:wrap}
.binding-picker{display:flex;gap:8px;flex-wrap:wrap;max-height:150px;overflow:auto;margin:12px 0}
.binding-coverage{font-size:12px;overflow-wrap:anywhere}.binding-column-title{fill:var(--muted);font-size:11px;letter-spacing:1px}
.binding-edge{stroke-width:2;stroke-dasharray:5 3}.binding-edge.binding-dim{opacity:.12}.binding-node[data-binding-node=binding] rect{stroke:var(--accent);fill:var(--accent-bg)}
#binding-inspector .details-block{overflow-wrap:anywhere}#binding-inspector .step-list{padding-left:18px}
.atlas-expand-node{cursor:pointer}.atlas-expand-node rect{fill:var(--surface2);stroke:var(--violet)}.atlas-expand-node text{fill:var(--text);font-size:22px;pointer-events:none}.atlas-expand-node:focus{outline:none}.atlas-expand-node:focus rect,.atlas-expand-node:hover rect{stroke:var(--accent);stroke-width:3}
#view-atlas .binding-pagination{top:auto;bottom:40px;left:22px;right:22px;background:var(--surface2);width:max-content;max-width:calc(100% - 44px)}
.binding-pagination span{font-size:11px}.binding-pagination~.binding-reading-note{display:none}
@media(max-width:760px){
 .atlas-toolbar{inset:8px 8px auto}.atlas-toolbar>strong{font-size:12px}.atlas-toolbar .atlas-controls{gap:4px}
 #view-atlas .button{font-size:11px;padding:7px 8px}.atlas-search-row{left:8px;right:8px;gap:8px}.atlas-search-row>input{max-width:55%;width:55%}
 .atlas-crumbs{max-width:45%;font-size:11px}.atlas-main>.atlas-controls{left:8px;right:8px}
 #view-atlas .atlas-viewport{left:8px;right:8px}
 #view-atlas .atlas-selection{top:auto;bottom:40px;left:16px;right:16px;width:auto;max-width:none;max-height:42dvh;padding:12px}
 .atlas-status{display:none}#atlas-count,#binding-summary{font-size:10px}
 .breadcrumbs{min-width:0;overflow:hidden}.breadcrumbs #crumb-app{overflow:hidden;text-overflow:ellipsis}.mobile-brand,.top-actions{flex-shrink:0}
}
@media(max-height:500px){
 .atlas-toolbar{top:4px;height:32px}.atlas-search-row{top:42px}.atlas-main>.atlas-controls{top:84px}
 #view-atlas .atlas-viewport{top:126px;bottom:32px}#view-atlas .atlas-selection{top:132px;bottom:36px;left:auto;right:16px;width:300px;max-height:calc(100dvh - 168px)}
 .atlas-status{display:none}
}
