/* Report index: compact tables on desktop, stacked entries on touch screens. */
.ap-site:has(.cb-index)>main{width:100%;max-width:1200px;margin-inline:auto}
.ap-reports-hero{padding-top:2.125rem;padding-bottom:2rem}
.ap-reports-hero .ap-title{font-size:clamp(2.25rem,4.2vw,3.75rem);font-weight:400;line-height:1.08;letter-spacing:-.04em;max-width:52rem}
.ap-reports-purpose{font-size:1.0625rem;line-height:1.6;max-width:46.25rem;margin:1.25rem 0 1.375rem}
.cb-hero-links{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;font-size:.9375rem}
.cb-hero-links .ap-disclosure-link{margin:0;padding:0}
.cb-hero-links nav{display:flex;gap:1.5rem}
.cb-hero-links nav span,.heading-count{color:#626262;margin-left:6px;font-size:.875rem;font-weight:400}
.cb-index{--ink:#171717;--muted:#626262;--line:#dededb;color:var(--ink)}
.cb-section{margin-bottom:3.25rem;scroll-margin-top:24px}
.cb-heading{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;border-top:1px solid #b6b6b2;padding-top:1.25rem;margin-bottom:1.25rem}
.cb-heading h2{font-size:1.875rem;font-weight:400;letter-spacing:-.025em}
.cb-results-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:60px;font-size:.875rem;color:var(--muted)}
.cb-text-button{border:0;background:transparent;color:inherit;font-size:.875rem;padding:.5rem 0;text-decoration:underline;text-underline-offset:4px}
.cb-empty{padding:2rem;border:1px solid var(--line);text-align:center}
.cb-index input,.cb-index select{font:inherit;color:var(--ink);min-width:0}
.cb-index input:focus-visible,.cb-index select:focus-visible,.cb-index button:focus-visible{outline:2px solid #345b75;outline-offset:4px}
.cb-index .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Shared column headers keep the report list compact without repeating labels. */
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
.table-scroll:focus-visible{outline:2px solid #345b75;outline-offset:4px}
.report-table{width:100%;min-width:960px;table-layout:fixed;border-collapse:collapse;text-align:left}
.report-table .report-column{width:auto}
/* Keep dates compact and reserve edge padding inside the last column. */
.report-table .incident-column,.report-table .created-column,.report-table .updated-column{width:104px}
.report-table .incident-column{width:132px}
.report-table .expand-column{width:48px}
.report-table th,.report-table td{padding:15px 18px;vertical-align:middle}
.report-table th:first-child,.report-table td:first-child{padding-left:22px}
.report-table thead th{padding-top:14px;padding-bottom:14px;background:#f4f4f1;border-bottom:1px solid var(--line);font-size:.75rem;font-weight:600;color:var(--ink);letter-spacing:.02em}
.report-entry+.report-entry{border-top:1px solid #e7e7e3}
.report-entry{transition:background-color 220ms ease}
.report-entry.is-open{background:#f5f7f5}
.report-title{font-size:.875rem;line-height:1.5;font-weight:600;text-decoration:none;white-space:nowrap}
.report-title:hover{text-decoration:underline;text-underline-offset:3px}
.report-topics{font-size:.75rem;line-height:1.5;font-weight:400;color:var(--muted);margin:8px 0 0}
.table-date{font-size:.8125rem;line-height:1.65;font-variant-numeric:tabular-nums;white-space:nowrap}
.table-date time{white-space:nowrap}
@media(max-width:900px){.report-table th,.report-table td{padding:16px 14px}.report-table thead th{padding-top:12px;padding-bottom:12px}}

.report-table th:nth-child(n+2),.report-table td:nth-child(n+2){padding-left:8px;padding-right:8px}
.report-table th:last-child,.report-table td:last-child{padding-right:20px}
.report-table thead th:nth-child(n+2){white-space:nowrap}

/* Header controls retain the compact column widths and visible focus. */
.column-sort{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;white-space:nowrap;cursor:pointer}
.column-sort:hover{color:var(--ink)}
.column-sort:focus-visible{outline:2px solid #345b75;outline-offset:4px}
.column-sort span{font-size:.6875rem;color:#888}
th[aria-sort] .column-sort,th[aria-sort] .column-sort span{color:var(--ink)}

/* Category chips share a shape; restrained icon colors distinguish each topic. */
/* A compact search field stays available without a prominent input box. */
.quiet-search{display:flex;flex-direction:row;align-items:center;gap:7px;width:170px;border-bottom:1px solid #e7e7e3;color:#777}
.quiet-search svg{width:15px;height:15px;flex:none}
.quiet-search input{width:100%;min-height:32px;padding:6px 0;border:0;border-radius:0;background:transparent;font-size:.8125rem;outline-offset:2px}
.quiet-search:focus-within{border-bottom-color:#555;color:#333}
.quiet-search input:focus-visible{outline:2px solid #345b75;outline-offset:2px}
/* Keep the category label beside the filters without adding another desktop row. */
.category-toolbar{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}
.category-label{padding:10px 0;font-size:.8125rem;line-height:1.3;color:var(--muted)}
.category-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0;min-width:0}
.category-filter{--accent:#555;--tint:#f1f1ef;display:inline-flex;align-items:center;gap:8px;border:1px solid #deded9;border-radius:7px;padding:10px 12px;background:white;color:#555;font-size:.8125rem;line-height:1.3;cursor:pointer;transition:background .15s,border-color .15s}
.category-filter svg{width:17px;height:17px;flex:none;color:var(--accent)}
.category-filter.blue{--accent:#356587;--tint:#edf4f9}
.category-filter.violet{--accent:#715d96;--tint:#f3eff9}
.category-filter.amber{--accent:#916b25;--tint:#fbf5e8}
.category-filter.teal{--accent:#337a6d;--tint:#edf7f4}
.category-filter.rose{--accent:#9a5868;--tint:#fbf0f3}
.category-filter:hover{background:var(--tint);border-color:var(--accent)}
.category-filter[aria-pressed=true]{background:var(--tint);border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 .5px var(--accent)}
.category-filter.neutral[aria-pressed=true]{background:#262626;border-color:#262626;color:white;--accent:white;box-shadow:none}
.category-filter:focus-visible{outline:2px solid #345b75;outline-offset:3px}
/* Stretch each native title link across its row, including descriptions and dates. */
.entry-main{position:relative}
.report-title::after{content:"";position:absolute;inset:0}
/* Both links share one entry highlight, including the expanded description. */
.report-entry a{-webkit-tap-highlight-color:transparent}
.report-entry:has(a:active),.report-entry:has(a:focus-visible){background:#e5ece7}
.report-entry:has(a:active){transition:none}
.report-entry:has(a:focus-visible){outline:2px solid #345b75;outline-offset:-2px}
.report-entry a:focus-visible{outline:none}
/* Animate natural content height, with no fixed-height jump or clipped text. */
.report-table .entry-detail>td{padding:0}
.description-drawer{display:grid;grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows 360ms cubic-bezier(.22,1,.36,1),opacity 240ms ease,visibility 360ms}
.is-enhanced .description-drawer{grid-template-rows:0fr;opacity:0;visibility:hidden}
.is-enhanced .report-entry.is-open .description-drawer{grid-template-rows:1fr;opacity:1;visibility:visible}
.description-clip{min-height:0;overflow:hidden}
.description-content{display:block;padding:0 22px 18px;font-size:.875rem;line-height:1.6;color:#454545;text-decoration:none;transform:translateY(-5px);transition:transform 360ms cubic-bezier(.22,1,.36,1)}
.report-entry.is-open .description-content{transform:translateY(0)}
.description-content>p{margin:0;max-width:90ch}
.description-content:hover{text-decoration:none}
.description-content>.report-topics{margin-top:8px}
.description-toggle{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:5px;border:0;border-radius:5px;background:transparent;color:#727873;cursor:pointer}
.description-toggle:hover{background:#e6ebe6;color:var(--ink)}
.description-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform 360ms cubic-bezier(.22,1,.36,1)}
.report-entry.is-open .description-toggle svg{transform:rotate(180deg)}
.mobile-sort{display:none}


/* Discovery dates retain their meaning and are excluded from incident sorting. */
.date-qualifier{display:block;font-size:10px;line-height:1.2;color:var(--muted)}
.column-sort:disabled{cursor:default;opacity:1}
.report-title{display:block;overflow:hidden;text-overflow:ellipsis}
.report-table th:first-child{font-weight:600}
.description-content{transform:none}
.is-enhanced .description-content{transform:translateY(-5px)}
.is-enhanced .report-entry.is-open .description-content{transform:translateY(0)}
@media(max-width:1100px){
 .ap-site:has(.cb-index)>main{padding-inline:16px}
 .ap-reports-hero{padding-top:1.5rem}
 .ap-reports-hero .ap-title{font-size:2.125rem}
 .ap-reports-purpose{font-size:1rem}
 .quiet-search{width:130px}
 .quiet-search input{font-size:16px;min-height:44px}
 .category-toolbar{display:block;margin-bottom:16px}
 .category-label{display:block;padding:0;margin-bottom:8px}
 .category-filters{gap:6px}
 .category-filter{min-height:44px;padding:8px 10px;gap:6px}
 .table-scroll{overflow:visible}
 .report-table{display:block;min-width:0;width:100%}
 .report-table colgroup,.report-table thead{display:none}
 .mobile-sort{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:12px;color:var(--muted)}
 .mobile-sort>span{flex:none}
 .mobile-sort select{width:auto;max-width:100%;flex:1;min-height:44px;padding:10px 28px 10px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:16px}
 .report-entry{display:block}
 .report-entry:first-of-type{border-radius:10px 10px 0 0}
 .report-entry:last-child{border-radius:0 0 10px 10px}
 .entry-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px;padding:16px}
 .notice-table .entry-main{grid-template-columns:repeat(2,minmax(0,1fr))}
 .report-table .entry-main>th{grid-column:1/-1;display:block;padding:0 38px 0 0}
 .report-title{white-space:normal;overflow-wrap:anywhere;font-size:15px;line-height:1.45}
 .report-table .entry-main>.table-date{display:block;padding:0;font-size:12px;line-height:1.6;white-space:normal}
 .table-date::before{content:attr(data-label);display:block;font-size:11px;line-height:1.4;color:var(--muted);margin-bottom:4px}
 .date-qualifier{display:none}
 .report-table .entry-main>.entry-action{position:absolute;right:6px;top:6px;padding:0}
 .description-toggle{width:44px;height:44px}
 .entry-detail,.entry-detail>td{display:block;width:100%}
 .description-content{padding:0 16px 16px;font-size:14px}
 .cb-results-bar{min-height:0;padding:12px 0}
 .cb-section{margin-bottom:32px}
}
@media(max-width:720px){
 .cb-hero-links{align-items:flex-start;flex-direction:column;gap:18px}
 .cb-heading h2{font-size:1.625rem}
}
@media(max-width:440px){
 .category-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .category-filter{width:100%;font-size:12px;text-align:left}
}
@media(prefers-reduced-motion:reduce){.cb-index *{transition:none!important;scroll-behavior:auto!important}}
