:root{--fg:#000;--muted:#666;--muted-2:#999;--bg:#fff;--bg-alt:#f5f5f5;--bg-soft:#fafafa;--border:#999;--border-soft:#ccc;--border-faint:#e6e6e6;--accent:#fff8a8;--accent-text:#000;--link:#000;--link-visited:#555;--success:#2a6f2a;--error:#cc2a2a;--warning:#8a6d00;--text-body:var(--fg);--text-secondary:var(--muted);--text-tertiary:var(--muted-2);--surface-page:var(--bg);--surface-header:var(--bg-alt);--surface-hover:var(--bg-soft);--border-primary:var(--border);--border-table:var(--border-soft);--border-row:var(--border-faint);--highlight:var(--accent);--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--font-features:"kern","liga","tnum";--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-lg:16px;--text-xl:20px;--weight-regular:400;--weight-medium:500;--weight-active:600;--leading:1.4;--tracking-label:0.06em;--tracking-form-label:0.04em;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:16px;--space-8:24px;--space-9:48px;--pad-cell-y:5px;--pad-cell-x:10px;--border-w:1px;--radius:0;--shadow:none;--site-max-width:1240px;--site-pad:24px;--sidebar-width:240px;--layout-gap:24px;--measure:720px;--z-base:0;--z-sticky:10;--z-dropdown:20;--z-drawer:30;--z-modal:40;--z-popover:50;--z-toast:60}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading);font-feature-settings:var(--font-features)}h1,h2,h3,h4{font-weight:500}a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--fg);text-decoration-thickness:2px}a:visited{color:var(--link-visited)}:focus-visible{outline:2px solid var(--fg);outline-offset:1px}code,kbd,pre,samp{font-family:var(--font-mono);font-size:var(--text-sm)}code{background:var(--bg-alt);padding:0 3px}pre code{background:none;padding:0}.site{max-width:var(--site-max-width);margin:0 auto;padding:var(--site-pad)}.header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 4px}.header h1{margin:0;font-size:16px;font-weight:500}.header h1 a{color:var(--fg);text-decoration:none}.header h1 a:hover{text-decoration:underline}.header nav{font-size:12px;color:var(--muted)}.header nav a{margin-left:0;padding:1px 7px;border:1px solid var(--border);text-decoration:none;display:inline-block;font-size:11px;color:var(--fg);background:var(--bg)}.header nav a+a{margin-left:4px}.header nav a.active,.header nav a:hover{border-color:var(--fg)}.header nav a.active{font-weight:600}.tagline{color:var(--muted);font-size:12px;margin:0 0 16px}.layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-gap:var(--layout-gap);gap:var(--layout-gap);align-items:start}@media (max-width:800px){.layout{grid-template-columns:1fr}}.filters-sidebar{min-width:0}.filters-toggle{display:none}.filters-content{display:contents}@media (max-width:800px){.filters-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;border:1px solid var(--border);background:var(--bg-soft);font:inherit;font-size:12px;cursor:pointer;text-align:left;margin-bottom:8px}.filters-toggle:hover{border-color:var(--fg)}.filters-active-dot{width:7px;height:7px;border:1px solid var(--fg);background:var(--accent);flex-shrink:0}.filters-content{display:none}.filters-content.open{display:block}}.filters-sidebar .filter-group{border:1px solid var(--border);margin-bottom:12px;background:var(--bg)}.filters-sidebar .filter-group h3{margin:0;padding:6px 10px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border);background:var(--bg-soft)}.filters-sidebar .filter-group .filter-search{width:100%;padding:5px 10px;border:0;border-bottom:1px solid var(--border-soft);background:var(--bg);font:inherit;font-size:12px;display:block}.filters-sidebar .filter-group .filter-search:focus{outline:none;background:var(--bg-soft)}.filters-sidebar .filter-group ul{list-style:none;padding:0;margin:0;max-height:200px;overflow-y:auto}.filters-sidebar .filter-group li{padding:2px 10px;font-size:12px;border-bottom:1px solid var(--border-faint)}.filters-sidebar .filter-group li:last-child{border-bottom:0}.filters-sidebar .filter-group li a{display:block;color:var(--fg);text-decoration:none;padding:1px 0}.filters-sidebar .filter-group li a:hover{color:var(--fg);text-decoration:underline}.filters-sidebar .filter-group li a.active{font-weight:600;color:var(--fg)}.filters-sidebar .filter-group li.clear a{color:var(--muted);font-style:italic}.filters-sidebar .filter-group .filter-count{color:var(--muted-2);font-size:10px;margin-left:4px}@media (max-width:800px){.filters-sidebar .filter-group{border:0;border-top:1px solid var(--border-soft);margin-bottom:0}.filters-sidebar .filter-group h3{background:none;border-bottom:0;padding:8px 0 4px;color:var(--muted)}.filters-sidebar .filter-group .filter-search{border:1px solid var(--border-soft);margin-bottom:4px}.filters-sidebar .filter-group ul{max-height:160px}.filters-sidebar .filter-group li{padding:3px 0;border-bottom:0}.filters-content{padding:4px 0 8px}.search-form{margin-bottom:8px}}.search-form{margin-bottom:12px}.searchbox{width:100%;padding:6px 10px;border:1px solid var(--border);background:var(--bg);font:inherit;font-size:13px}.searchbox:focus{outline:none;background:var(--bg-soft)}.filter-group .filter-search:focus-visible,.searchbox:focus-visible,form.submit-form input:focus-visible,form.submit-form select:focus-visible,form.submit-form textarea:focus-visible{outline:2px solid var(--fg);outline-offset:1px}@media (max-width:800px){main{overflow-x:auto}}table.data{width:100%;border-collapse:collapse;font-size:12px;border:1px solid var(--border-soft)}table.data td,table.data th{border:1px solid var(--border-soft);padding:5px 10px;text-align:left;vertical-align:baseline}table.data th{background:var(--bg-alt);font-weight:500;color:var(--muted);font-size:11px}.mobile-directory{display:none}td.num,th.num{white-space:nowrap}td.num,td.rank,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td.rank{width:36px;background:var(--bg-alt)}td.rank,td.tag{color:var(--muted);font-size:11px}.pill{display:inline-block;padding:0 5px;border:1px solid var(--border);font-size:10px;color:var(--muted);background:var(--bg);margin-left:4px;vertical-align:1px;border-radius:0;text-transform:lowercase;letter-spacing:0}.pill.confirmed{border-color:var(--fg);color:var(--fg)}.pill.reported{color:var(--muted)}.pill.rumored{background:var(--accent);border-color:var(--fg);color:var(--fg)}.pill.estimated{color:var(--muted-2);font-style:italic}.pill.new{background:var(--accent)}.pill.new,.pill.updated{border-color:var(--fg);color:var(--fg)}.profile-link{color:var(--muted-2);text-decoration:none;font-size:10px;vertical-align:1px;padding:0 2px}.profile-link:hover{color:var(--fg);text-decoration:none}.val{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.val-confirmed{font-weight:500}.val-rumored{font-style:italic;color:var(--muted)}.val-estimated{font-style:italic;color:var(--muted-2)}.val-estimated:after,.val-rumored:after{content:"*";font-size:10px;font-style:normal;color:var(--muted-2);margin-left:1px;vertical-align:super}.val-confirmed:after{content:"✓";font-size:9px;color:var(--muted-2);margin-left:2px;vertical-align:super;font-weight:400}.val-legend{margin:4px 0 0;font-size:11px;color:var(--muted-2);line-height:1.7}.val-legend .sym{font-style:normal}.path-tag{display:inline-block;border:1px solid var(--fg);padding:1px 7px;font-size:11px;margin-right:6px}.fact-table{width:100%;max-width:600px;border-collapse:collapse;font-size:12px;border:1px solid var(--border-soft);margin:0 0 18px}.fact-table td,.fact-table th{border:1px solid var(--border-soft);padding:5px 10px;text-align:left;vertical-align:baseline}.fact-table th{background:var(--bg-alt);width:160px}.fact-table th,h2.section{font-weight:500;color:var(--muted)}h2.section{font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin:24px 0 8px;padding:0;border:0}.muted{color:var(--muted)}.muted-2{color:var(--muted-2)}.small{font-size:11px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:24px 0 8px;border-bottom:1px solid var(--border-soft);padding-bottom:4px}.section-heading h2,.section-heading h3{margin:0;font-size:12px;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.section-heading .section-meta{color:var(--muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.results-info{font-size:11px;color:var(--muted);margin:0 0 8px}.notice-box{display:flex;align-items:baseline;gap:8px;border:1px solid var(--border);background:var(--bg);padding:6px 10px;font-size:12px;margin:0 0 12px;max-width:720px}.notice-box .notice-kind{font-weight:500;white-space:nowrap}.notice-box .notice-body{flex:1 1}.notice-box.success{border-color:var(--success)}.notice-box.success .notice-kind{color:var(--success)}.notice-box.warning{border-color:var(--warning)}.notice-box.warning .notice-kind{color:var(--warning)}.notice-box.error{border-color:var(--error)}.notice-box.error .notice-kind{color:var(--error)}form.submit-form{max-width:600px}form.submit-form label{display:block;margin:10px 0 3px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}form.submit-form input[type=email],form.submit-form input[type=text],form.submit-form input[type=url],form.submit-form select,form.submit-form textarea{width:100%;padding:5px 8px;border:1px solid var(--border);background:var(--bg);font:inherit;font-size:12px}form.submit-form input:focus,form.submit-form textarea:focus{outline:none;background:var(--bg-soft)}form.submit-form textarea{min-height:80px;resize:vertical}form.submit-form button{margin-top:14px;padding:4px 12px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);font:inherit;font-size:12px;cursor:pointer}form.submit-form button:hover{background:var(--accent);color:var(--fg)}.field-help{color:var(--muted)}.field-error,.field-help{font-size:11px;margin:3px 0 0}.field-error{color:var(--error)}.btn{padding:2px 10px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);font:inherit;font-size:12px;cursor:pointer}.btn:hover{background:var(--accent);color:var(--fg);border-color:var(--fg)}.btn-secondary{padding:2px 10px;border:1px solid var(--muted);background:var(--bg);color:var(--fg);font:inherit;font-size:12px;cursor:pointer}.btn-secondary:hover{border-color:var(--fg)}.btn-sm{padding:0 6px;border:1px solid var(--border);background:var(--bg);color:var(--fg);font:inherit;font-size:11px;cursor:pointer}.btn-sm:hover{border-color:var(--fg)}.linklike{display:inline;padding:0;border:none;background:none;font:inherit;color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;cursor:pointer}.linklike:hover{color:var(--fg);text-decoration-thickness:2px}.footer{margin-top:48px;padding-top:10px;border-top:1px solid var(--border-soft);font-size:11px}.footer,.footer a{color:var(--muted)}.footer a:hover{color:var(--fg)}.feed-item{padding:8px 10px;border:1px solid var(--border-soft);border-top:0}.feed-item:first-child{border-top:1px solid var(--border-soft)}.feed-item .feed-meta{color:var(--muted);font-size:11px}.feed-item .feed-title{font-weight:500}.crumb{font-size:11px;letter-spacing:.05em;text-transform:uppercase;margin:4px 0 16px}.crumb,.crumb a{color:var(--muted)}.crumb a{text-decoration:none}.crumb a:hover{text-decoration:underline}.yearband{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:14px 0 4px}.article{display:grid;grid-template-columns:176px minmax(0,1fr);grid-gap:36px;gap:36px;padding-bottom:64px}.meta{font-size:12px;position:-webkit-sticky;position:sticky;top:16px;align-self:start}.meta .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:16px 0 3px}.meta .val-meta{margin:0}.meta .back{display:inline-block;margin-bottom:18px;color:var(--fg);text-decoration:underline;font-size:12px}.meta .toc{margin-top:3px}.meta .toc a{display:block;color:var(--fg);text-decoration:none;padding:3px 0;border-bottom:1px solid var(--border-faint)}.meta .toc a:hover{text-decoration:underline}.body{max-width:68ch}.body .title{font-size:24px;line-height:1.22;font-weight:500;margin:0 0 6px;max-width:24ch;text-wrap:balance}.body .byline{color:var(--muted);font-size:12px;margin:0 0 22px}.prose{font-size:15px;line-height:1.62}.prose p{margin:0 0 1.05em;max-width:64ch;text-wrap:pretty}.prose .lede{font-size:16px;color:var(--fg)}.prose h2{font-size:16px;font-weight:500;margin:1.9em 0 .55em;scroll-margin-top:20px}.prose a{color:var(--fg);text-decoration:underline;text-underline-offset:2px}.prose a:hover{text-decoration-thickness:2px}.prose strong{font-weight:500}.prose blockquote{margin:1.5em 0;padding-left:16px;border-left:1px solid var(--border);color:#333;max-width:60ch;font-size:15px}.prose code{background:var(--bg-alt);padding:0 3px}.prose sup a{text-decoration:none}.prose figure{margin:1.7em 0;max-width:64ch}.prose .fig{border:1px solid var(--border);height:220px;display:grid;place-items:center;color:var(--muted-2);font-size:11px;letter-spacing:.04em;background:var(--bg-alt)}.prose figcaption{font-size:11px;color:var(--muted);margin-top:7px}.prose table.prose-fact{border-collapse:collapse;width:100%;max-width:64ch;margin:1.6em 0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.prose table.prose-fact td,.prose table.prose-fact th{border-bottom:1px solid var(--border-faint);padding:6px 10px 6px 0;text-align:left;vertical-align:baseline}.prose table.prose-fact thead th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:400;border-bottom:1px solid var(--border)}.prose table.prose-fact td.num,.prose table.prose-fact th.num{text-align:right;white-space:nowrap}.prose .footnotes{margin-top:2.4em;border-top:1px solid var(--border-soft);padding-top:10px;font-size:12px;color:var(--muted)}.prose .footnotes p{margin:0 0 6px;max-width:64ch}.prose .footnotes sup{color:var(--fg)}.prevnext{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--border-soft);margin-top:30px;padding-top:12px;font-size:12px}.prevnext a{color:var(--fg);text-decoration:underline}.prevnext .nx{text-align:right;margin-left:auto}@media (max-width:760px){.article{grid-template-columns:1fr;gap:18px}.meta{position:static}.meta .toc{display:none}}@media (max-width:600px){main{overflow-x:visible}.desktop-directory{display:none}.mobile-directory{display:block}.mobile-lab-row{border:1px solid var(--border-soft);border-top:0;padding:8px 10px;background:var(--bg);font-size:12px}.mobile-lab-row:first-child{border-top:1px solid var(--border-soft)}.mobile-lab-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:baseline;font-size:13px}.mobile-lab-head>div:first-child{min-width:0;overflow-wrap:anywhere}.mobile-lab-meta{display:flex;flex-wrap:wrap;gap:4px 10px;color:var(--muted);font-size:11px;margin-top:3px}.mobile-lab-detail{margin-top:5px;color:var(--fg);overflow-wrap:anywhere}.mobile-lab-actions{margin-top:4px;font-size:11px}}.notice-box.info .notice-kind{color:var(--fg)}.notice-box .notice-action{white-space:nowrap}.dismiss{border:0;background:none;font:inherit;font-size:var(--text-sm);color:var(--muted);cursor:pointer;padding:0 3px;line-height:1}.dismiss:hover{color:var(--fg);background:var(--bg-alt)}.input-affix{display:flex;align-items:stretch;border:1px solid var(--border);background:var(--bg);width:100%}.input-affix>input{flex:1 1;min-width:0;border:0;padding:5px 8px;background:transparent;font:inherit;font-size:var(--text-sm)}.input-affix>input:focus{outline:none;background:var(--bg-soft)}.input-affix .affix{display:flex;align-items:center;padding:0 8px;font-size:var(--text-sm);color:var(--muted);background:var(--bg-alt)}.input-affix .affix.prefix{border-right:1px solid var(--border-soft)}.input-affix .affix.suffix{border-left:1px solid var(--border-soft)}.char-count{display:block;text-align:right;font-size:var(--text-2xs);color:var(--muted-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:2px}.char-count.over{color:var(--error)}.field-required{color:var(--muted)}.input.invalid,.input[aria-invalid=true],.textarea.invalid,.textarea[aria-invalid=true]{border-color:var(--error)}.input[readonly],.textarea[readonly]{background:var(--bg-soft);color:var(--muted)}.input[disabled],.select[disabled],.textarea[disabled]{opacity:.45;cursor:not-allowed}.num-input{display:inline-flex;align-items:stretch;border:1px solid var(--border);background:var(--bg)}.num-input input{width:64px;border:0;padding:5px 8px;font:inherit;font-size:var(--text-sm);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.num-input input::-webkit-inner-spin-button,.num-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.num-input input:focus{outline:none;background:var(--bg-soft)}.num-input button{width:22px;border:0;border-left:1px solid var(--border-soft);background:var(--bg);font:inherit;font-size:var(--text-sm);color:var(--fg);cursor:pointer;padding:0}.num-input button:hover{background:var(--bg-alt)}.num-input button:disabled{color:var(--muted-2);cursor:not-allowed}.segmented{display:inline-flex}.segmented button{padding:2px 10px;border:1px solid var(--border);border-left-width:0;background:var(--bg);font:inherit;font-size:var(--text-xs);color:var(--muted);cursor:pointer}.segmented button:first-child{border-left-width:1px}.segmented button:hover{border-color:var(--fg);color:var(--fg)}.segmented button.active,.segmented button[aria-pressed=true]{font-weight:var(--weight-active);color:var(--fg);border-color:var(--fg);background:var(--bg-alt)}.segmented button:disabled{opacity:.45;cursor:not-allowed}.segmented button.active+button,.segmented button[aria-pressed=true]+button{border-left-color:var(--fg)}.slider-row{display:flex;align-items:center;gap:10px;max-width:360px}.slider-row input[type=range]{flex:1 1;accent-color:#000;margin:0;height:16px}.slider-row .slider-value{font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:36px;text-align:right}.date-input{padding:4px 8px;border:1px solid var(--border);background:var(--bg);font:inherit;font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.date-input:focus{outline:none;background:var(--bg-soft)}.date-range{display:inline-flex;align-items:center;gap:6px}.date-range .sep{color:var(--muted-2)}.file-drop{border:1px solid var(--border);background:var(--bg);padding:14px;text-align:center;font-size:var(--text-sm);color:var(--muted);cursor:pointer}.file-drop.over,.file-drop:hover{border-color:var(--fg);background:var(--bg-soft);color:var(--fg)}.file-list{list-style:none;margin:6px 0 0;padding:0}.file-list li{display:flex;align-items:baseline;gap:8px;padding:3px 0;border-bottom:1px solid var(--border-faint);font-size:var(--text-sm)}.file-list .file-size{color:var(--muted-2);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.file-list .file-status{margin-left:auto;font-size:var(--text-xs);color:var(--muted)}.file-list .file-status.error{color:var(--error)}.file-list .file-remove{border:0;background:none;padding:0 2px;font:inherit;color:var(--muted);cursor:pointer}.file-list .file-remove:hover{color:var(--fg)}.combo{position:relative;max-width:280px}.combo-list{position:absolute;top:100%;left:0;right:0;margin-top:-1px;border:1px solid var(--border);background:var(--bg);max-height:180px;overflow-y:auto;z-index:var(--z-dropdown);list-style:none;padding:0}.combo-list li{padding:3px 8px;font-size:var(--text-sm);cursor:pointer;border-bottom:1px solid var(--border-faint)}.combo-list li:last-child{border-bottom:0}.combo-list li:hover,.combo-list li[aria-selected=true]{background:var(--bg-alt)}.combo-list li.empty{color:var(--muted-2);cursor:default}.combo-list li.empty:hover{background:none}.combo-list li .check{float:right;color:var(--muted)}.multi-trigger{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--border);background:var(--bg);font:inherit;font-size:var(--text-sm);cursor:pointer;width:100%;justify-content:space-between}.multi-trigger:hover{border-color:var(--fg)}.multi-count{border:1px solid var(--fg);padding:0 5px;font-size:var(--text-2xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.filter-token{display:inline-flex;align-items:baseline;gap:4px;border:1px solid var(--border);padding:0 2px 0 5px;font-size:var(--text-2xs);background:var(--bg)}.filter-token .token-key{color:var(--muted)}.filter-token .token-remove{border:0;background:none;font:inherit;font-size:var(--text-2xs);color:var(--muted);cursor:pointer;padding:0 3px}.filter-token .token-remove:hover{color:var(--fg);background:var(--bg-alt)}.filtered-search{display:flex;flex-wrap:wrap;align-items:center;gap:4px;border:1px solid var(--border);padding:3px 6px;background:var(--bg)}.filtered-search input{flex:1 1;min-width:120px;border:0;font:inherit;font-size:var(--text-sm);padding:2px 0;background:transparent}.filtered-search input:focus{outline:none}.filtered-search:focus-within{background:var(--bg-soft)}fieldset.fieldset{border:1px solid var(--border-soft);padding:10px 12px 12px;margin:0 0 14px}fieldset.fieldset legend{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-label);padding:0 6px}.form-summary{border:1px solid var(--error);padding:8px 10px;margin:0 0 14px;font-size:var(--text-sm)}.form-summary .summary-title{color:var(--error);font-weight:var(--weight-medium);margin:0 0 4px}.form-summary ul{margin:0;padding-left:18px}.form-summary li{margin:1px 0}table.data.zebra tbody tr:nth-child(2n) td{background:var(--bg-soft)}table.data.dense td,table.data.dense th{padding:2px 8px;font-size:var(--text-xs)}table.data.sticky-header thead th{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}table.data tbody tr.selected td{background:var(--bg-alt)}table.data th.sortable{padding:0}table.data th.sortable button{display:block;width:100%;border:0;background:none;font:inherit;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--muted);text-align:inherit;padding:var(--pad-cell-y) var(--pad-cell-x);cursor:pointer}table.data th.sortable button:hover{color:var(--fg)}table.data th.sortable .sort-mark{color:var(--muted-2);margin-left:3px;font-size:var(--text-2xs)}table.data th.sortable[aria-sort] button{color:var(--fg);font-weight:var(--weight-active)}table.data td.checkbox-cell,table.data th.checkbox-cell{width:24px;text-align:center}table.data td.checkbox-cell input,table.data th.checkbox-cell input{margin:0;accent-color:#000}table.data tr.expanded-row>td{background:var(--bg-soft);font-size:var(--text-xs);padding:8px 12px}table.data .expand-toggle{border:0;background:none;font:inherit;font-size:var(--text-xs);cursor:pointer;padding:0 2px;color:var(--muted)}table.data .expand-toggle:hover{color:var(--fg)}.table-toolbar{display:flex;align-items:center;gap:8px;margin:0 0 8px}.table-toolbar .toolbar-spacer{flex:1 1}.batch-bar{display:flex;align-items:center;gap:12px;border:1px solid var(--fg);background:var(--bg-alt);padding:4px 10px;font-size:var(--text-sm);margin:0 0 8px}.batch-bar .batch-count{font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.batch-bar .batch-cancel{margin-left:auto}dl.structured{display:grid;grid-template-columns:160px 1fr;margin:0;border:1px solid var(--border-soft);border-bottom:0;max-width:600px;font-size:var(--text-sm)}dl.structured dt{background:var(--bg-alt);color:var(--muted);font-weight:var(--weight-medium);border-right:1px solid var(--border-soft)}dl.structured dd,dl.structured dt{padding:5px 10px;border-bottom:1px solid var(--border-soft)}dl.structured dd{margin:0}ol.plain-list,ul.plain-list{margin:0 0 12px;padding-left:20px;font-size:var(--text-base)}ol.plain-list li,ul.plain-list li{margin:2px 0}ul.plain-list{list-style:square}.tile{border:1px solid var(--border);background:var(--bg);margin:0 0 12px}.tile-header{padding:6px 10px;font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--muted);border-bottom:1px solid var(--border);background:var(--bg-soft)}.tile-body{padding:8px 10px;font-size:var(--text-sm)}.tile.clickable{cursor:pointer}.tile.clickable:hover,.tile.selected{border-color:var(--fg)}.tile.selected .tile-header{border-bottom-color:var(--fg);background:var(--bg-alt)}.accordion{border:1px solid var(--border-soft);border-bottom:0;max-width:600px}.accordion details{border-bottom:1px solid var(--border-soft)}.accordion summary{list-style:none;cursor:pointer;padding:5px 10px;font-size:var(--text-sm);font-weight:var(--weight-medium)}.accordion summary::-webkit-details-marker{display:none}.accordion summary:before{content:"▸";color:var(--muted-2);margin-right:6px;font-size:var(--text-xs)}.accordion details[open] summary:before{content:"▾"}.accordion summary:hover{background:var(--bg-soft)}.accordion .accordion-body{padding:0 10px 8px 24px;font-size:var(--text-sm)}.tree,.tree ul{list-style:none;margin:0;padding:0;font-size:var(--text-sm)}.tree ul{padding-left:16px;border-left:1px solid var(--border-faint);margin-left:5px}.tree li{padding:1px 0}.tree .tree-row{display:flex;align-items:baseline;gap:4px}.tree .tree-toggle{border:0;background:none;padding:0;font:inherit;font-size:var(--text-xs);color:var(--muted-2);cursor:pointer;width:12px}.tree .tree-toggle:hover{color:var(--fg)}.tree .tree-leaf{width:12px;display:inline-block}.tree .tree-label.selected{font-weight:var(--weight-active)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border);background:var(--bg-alt);font-size:var(--text-2xs);color:var(--fg);text-transform:uppercase;letter-spacing:.02em;flex-shrink:0}.avatar.sm{width:18px;height:18px;font-size:8px}.avatar-stack{display:inline-flex}.avatar-stack .avatar{margin-left:-1px}.avatar-stack .avatar-more{background:var(--bg);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.code-block{position:relative;border:1px solid var(--border-soft);background:var(--bg-soft);margin:0 0 12px;max-width:720px}.code-block pre{margin:0;padding:8px 10px;overflow-x:auto;font-size:var(--text-sm);line-height:1.5}.code-block .code-copy{position:absolute;top:4px;right:4px}.stat{display:inline-block;min-width:110px}.stat .stat-label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-label)}.stat .stat-value{font-size:var(--text-xl);font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.stat .stat-detail{font-size:var(--text-xs);color:var(--muted)}.stat-row{display:flex;gap:24px;flex-wrap:wrap}.stat-row.boxed{gap:0}.stat-row.boxed .stat{border:1px solid var(--border-soft);padding:8px 12px;margin-left:-1px}.stat-row.boxed .stat:first-child{margin-left:0}.tabs-line{display:flex;gap:16px;border-bottom:1px solid var(--border-soft);margin:0 0 12px}.tabs-line a,.tabs-line button{border:0;background:none;font:inherit;font-size:var(--text-sm);color:var(--muted);text-decoration:none;cursor:pointer;padding:3px 0 4px;margin-bottom:-1px;border-bottom:1px solid transparent}.tabs-line a:hover,.tabs-line button:hover{color:var(--fg);border-bottom-color:var(--border)}.tabs-line .active{color:var(--fg);font-weight:var(--weight-active);border-bottom:2px solid var(--fg)}.tabs-line .tab-count{color:var(--muted-2);font-size:var(--text-xs);margin-left:3px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tabs-contained{display:flex;margin:0 0 12px}.tabs-contained a,.tabs-contained button{border:1px solid var(--border);border-left-width:0;background:var(--bg);font:inherit;font-size:var(--text-xs);color:var(--muted);text-decoration:none;cursor:pointer;padding:2px 10px}.tabs-contained a:first-child,.tabs-contained button:first-child{border-left-width:1px}.tabs-contained .active{color:var(--fg);font-weight:var(--weight-active);border-color:var(--fg);background:var(--bg-alt)}.tabs-contained .active+a,.tabs-contained .active+button{border-left-color:var(--fg)}.inline-nav{font-size:var(--text-sm)}.inline-nav .sep{color:var(--muted-2);margin:0 5px}.inline-nav .active{font-weight:var(--weight-active);text-decoration:none}.toc{font-size:var(--text-sm)}.toc .toc-title{font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--muted);margin:0 0 4px}.toc ul{list-style:none;margin:0;padding:0}.toc ul ul{padding-left:12px}.toc li{padding:1px 0}.toc a{color:var(--muted);text-decoration:none}.toc a:hover{color:var(--fg);text-decoration:underline}.toc a.active{color:var(--fg);font-weight:var(--weight-active)}.skip-link{position:absolute;left:-9999px;top:0;z-index:var(--z-toast);background:var(--bg);border:2px solid var(--fg);padding:4px 10px;font-size:var(--text-sm);color:var(--fg)}.skip-link:focus{left:8px;top:8px}.banner{border:1px solid var(--border);background:var(--bg-soft);padding:5px 10px;font-size:var(--text-sm);display:flex;align-items:baseline;gap:10px;margin:0 0 16px}.banner.global{border-color:var(--fg);background:var(--bg-alt)}.banner .banner-body{flex:1 1}.toast-stack{position:fixed;top:12px;right:12px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:6px;width:300px}.toast{border:1px solid var(--fg);background:var(--bg);padding:6px 10px;font-size:var(--text-sm);display:flex;gap:8px;align-items:baseline}.toast .toast-kind{font-weight:var(--weight-medium);white-space:nowrap}.toast.success .toast-kind{color:var(--success)}.toast.warning .toast-kind{color:var(--warning)}.toast.error .toast-kind{color:var(--error)}.toast .toast-body{flex:1 1}.toast .toast-meta{font-size:var(--text-xs);color:var(--muted)}.modal-backdrop{position:fixed;inset:0;background:hsla(0,0%,100%,.85);z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;padding:10vh 16px 16px}.modal{border:1px solid var(--fg);background:var(--bg);width:100%;max-width:480px;max-height:80vh;display:flex;flex-direction:column}.modal.sm{max-width:360px}.modal.lg{max-width:720px}.modal-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 12px;border-bottom:1px solid var(--border-soft);background:var(--bg-soft)}.modal-title h2{margin:0;font-size:var(--text-sm);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--muted)}.modal.danger .modal-title h2{color:var(--error)}.modal-body{padding:12px;font-size:var(--text-base);overflow-y:auto}.modal-actions{display:flex;gap:8px;justify-content:flex-end;padding:10px 12px;border-top:1px solid var(--border-soft)}.btn-danger{padding:4px 12px;border:1px solid var(--error);background:var(--bg);color:var(--error);font:inherit;font-size:var(--text-sm);cursor:pointer}.btn-danger:hover{background:var(--error);color:var(--bg)}.btn-danger[disabled]{opacity:.45;cursor:not-allowed}.drawer-backdrop{inset:0;background:hsla(0,0%,100%,.85)}.drawer,.drawer-backdrop{position:fixed;z-index:var(--z-drawer)}.drawer{top:0;bottom:0;right:0;width:360px;max-width:90vw;border-left:1px solid var(--fg);background:var(--bg);display:flex;flex-direction:column}.drawer.left{right:auto;left:0;border-left:0;border-right:1px solid var(--fg)}.drawer.lg{width:480px}.drawer .drawer-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 12px;border-bottom:1px solid var(--border-soft);background:var(--bg-soft)}.drawer .drawer-title h2{margin:0;font-size:var(--text-sm);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--muted)}.drawer .drawer-body{padding:12px;font-size:var(--text-base);overflow-y:auto;flex:1 1}.drawer .drawer-actions{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--border-soft)}.popover-anchor{position:relative;display:inline-block}.popover{position:absolute;top:100%;left:0;margin-top:2px;border:1px solid var(--border);background:var(--bg);padding:8px 10px;font-size:var(--text-sm);min-width:180px;max-width:300px;z-index:var(--z-popover)}.popover.right{left:auto;right:0}.has-tooltip{position:relative}.tooltip{display:none;position:absolute;bottom:100%;left:0;margin-bottom:3px;border:1px solid var(--border);background:var(--bg);padding:2px 6px;font-size:var(--text-xs);font-weight:var(--weight-regular);font-style:normal;color:var(--fg);white-space:nowrap;max-width:280px;z-index:var(--z-popover)}.has-tooltip:focus-visible .tooltip,.has-tooltip:hover .tooltip{display:block}.tooltip-term{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--muted-2);text-decoration-color:var(--muted-2);text-underline-offset:2px;cursor:help}.progress{max-width:360px}.progress .progress-label{display:flex;justify-content:space-between;gap:10px;font-size:var(--text-xs);color:var(--muted);margin:0 0 3px}.progress .progress-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--fg)}.progress .progress-track{border:1px solid var(--fg);height:10px;background:var(--bg)}.progress .progress-fill{height:100%;background:var(--fg)}.progress.thin .progress-track{border:0;height:2px;background:var(--border-soft)}.progress-ascii{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:0}.stepper{display:flex;gap:0;list-style:none;margin:0 0 16px;padding:0;font-size:var(--text-sm);flex-wrap:wrap}.stepper li{display:flex;align-items:baseline}.stepper li+li:before{content:"—";color:var(--muted-2);margin:0 10px}.stepper .step-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-right:4px;color:var(--muted)}.stepper .done{color:var(--muted)}.stepper .done .step-check{color:var(--success);margin-right:4px;font-size:var(--text-xs)}.stepper .current{font-weight:var(--weight-active)}.stepper .future{color:var(--muted-2)}.loading-page,.loading-text{color:var(--muted);font-size:var(--text-sm)}.loading-page{padding:48px 0;text-align:center}.skeleton{background:var(--bg-alt);display:block}.skeleton-text .skeleton{height:9px;margin:5px 0}.skeleton-text .skeleton:last-child{width:60%}.empty-state{padding:24px 0;max-width:480px}.empty-state .empty-title{font-size:var(--text-base);font-weight:var(--weight-medium);margin:0 0 4px}.empty-state .empty-body{font-size:var(--text-sm);color:var(--muted);margin:0 0 8px}.empty-state.boxed{border:1px solid var(--border-soft);padding:18px;text-align:center;max-width:600px}.error-page{padding:48px 0;max-width:480px}.error-page .error-code{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-label);margin:0 0 6px}.error-page h1{font-size:var(--text-lg);margin:0 0 6px}.error-page p{font-size:var(--text-base);color:var(--muted);margin:0 0 12px}.chart{font-size:var(--text-xs);max-width:720px}.chart svg{display:block}.chart text{font-family:var(--font-sans);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart .axis-label,.chart text{fill:var(--muted)}.chart .direct-label{fill:var(--fg)}.chart .axis-line,.chart .tick-line{stroke:var(--fg);stroke-width:1;shape-rendering:crispEdges}.chart .grid-line{stroke:var(--border-soft);stroke-width:1;stroke-dasharray:1 3;shape-rendering:crispEdges}.chart-title{font-size:var(--text-base);font-weight:var(--weight-medium);margin:0;color:var(--fg)}.chart-subtitle{font-size:var(--text-xs);color:var(--muted);margin:1px 0 0}.chart-head{margin:0 0 8px;display:flex;align-items:baseline;gap:10px}.chart-head .chart-actions{margin-left:auto;display:flex;gap:6px}.chart-foot{font-size:var(--text-xs);color:var(--muted);margin:6px 0 0}.chart-state{padding:24px 0;color:var(--muted);font-size:var(--text-sm)}.chart-state.error{color:var(--error)}.chart-legend{display:flex;gap:14px;flex-wrap:wrap;margin:6px 0 0;font-size:var(--text-xs);color:var(--fg)}.chart-legend .legend-item{display:inline-flex;align-items:center;gap:5px}.chart-legend svg{flex-shrink:0}.sparkline{vertical-align:-2px}.cell-bar{display:flex;align-items:center;gap:6px;min-width:120px}.cell-bar .cell-bar-track{flex:1 1;height:9px;background:var(--bg);border:1px solid var(--border-soft)}.cell-bar .cell-bar-fill{height:100%;background:var(--fg)}.cell-bar .cell-bar-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:var(--text-xs);white-space:nowrap}.gauge{max-width:280px}.gauge .gauge-track{border:1px solid var(--fg);height:14px;background:var(--bg);position:relative}.gauge .gauge-fill{height:100%;background:var(--fg)}.gauge .gauge-fill.warn{background:var(--warning)}.gauge .gauge-fill.bad{background:var(--error)}.gauge .gauge-marker{position:absolute;top:-3px;bottom:-3px;width:1px;background:var(--fg)}.gauge .gauge-scale{display:flex;justify-content:space-between;font-size:var(--text-2xs);color:var(--muted-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:2px}