.catalog-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:18px;margin:32px 0 12px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.catalog-toolbar label{font-size:13px;font-weight:650;color:var(--muted)}.catalog-toolbar input,.catalog-toolbar select{display:block;width:100%;margin-top:7px}.catalog-list-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.catalog-list-heading p{color:var(--muted);font-size:14px}.catalog-list-heading button{background:none;border:0;text-decoration:underline;color:var(--teal);font:inherit;font-size:14px;cursor:pointer}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.catalog-card{background:#fff;border:1px solid var(--line);border-top:3px solid #ba8e75;border-radius:5px;padding:25px;display:flex;flex-direction:column}.catalog-card-meta{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted)}.catalog-card h2{font-size:24px;letter-spacing:-.6px;margin:18px 0 24px}.catalog-card h2 a{color:var(--ink);text-decoration:none}.catalog-card h2 a:hover{text-decoration:underline}.catalog-card-footer{margin-top:auto;border-top:1px solid #f4f5f6;padding-top:16px;display:flex;gap:10px;justify-content:space-between;font-size:13px;color:var(--muted)}.catalog-modes{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.catalog-card .catalog-modes .btn{font-size:12px;padding:10px 12px;flex:1;white-space:nowrap}.catalog-style-help{padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:35px 0}.catalog-style-help summary{font:650 17px 'Source Sans 3',sans-serif;cursor:pointer}.catalog-style-help>div{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:850px}.catalog-style-help h3{font-size:16px;margin-top:24px}.catalog-style-help p{font-size:16px;line-height:1.7;color:var(--muted);max-width:75ch}.catalog-disclosure{font-size:14px;line-height:1.7;color:var(--muted);max-width:85ch}.catalog-empty{padding:40px 0;grid-column:1/-1}.catalog-detail{max-width:900px}.catalog-detail h1{font-size:42px;letter-spacing:-1.5px;line-height:1.2;margin:17px 0}.catalog-meta{font-size:14px;color:var(--muted)}.catalog-meta span{padding:0 8px}.catalog-industry{color:var(--muted)}.catalog-brief{margin:30px 0;background:white;border-left:3px solid var(--teal);padding:25px 30px}.catalog-brief h2{font-size:20px;margin:0 0 14px}.catalog-brief p{font-size:19px;line-height:1.9;max-width:70ch;margin:0}.catalog-detail>.catalog-modes{margin:26px 0}@media(max-width:1150px){.catalog-toolbar{grid-template-columns:2fr 1fr}.catalog-card .catalog-modes{flex-direction:column}.catalog-card .catalog-modes .btn{flex:initial}}@media(max-width:750px){.catalog-grid{grid-template-columns:1fr}.catalog-card .catalog-modes{flex-direction:row}.catalog-style-help>div{grid-template-columns:1fr;gap:0}.catalog-detail h1{font-size:32px}.catalog-brief{padding:20px}.catalog-brief p{font-size:18px}}@media(max-width:420px){.catalog-toolbar{gap:15px;grid-template-columns:1fr 1fr}.catalog-search{grid-column:1/-1}.catalog-card{padding:20px}.catalog-card .catalog-modes{flex-direction:column}.catalog-detail .catalog-modes{flex-direction:column}.catalog-card-footer{flex-wrap:wrap}}

.catalog-card h2{margin-bottom:12px}.catalog-industry-tag{font-size:14px;color:var(--muted);display:block;margin:0 0 24px;line-height:1.5}

/* Choose the interview format once, then compare cases without repeated controls. */
.catalog-format { padding: 22px 24px; background: var(--surface); border: 1px solid var(--line); border-radius: 4px; margin: 26px 0; }
.catalog-format fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.catalog-format legend { font-size: 17px; font-weight: 600; margin-bottom: 12px; }
.catalog-format-options { display: flex; flex-wrap: wrap; gap: 10px; }
.catalog-format-options label { display: flex; align-items: center; gap: 9px; padding: 10px 15px; background: white; border: 1px solid var(--line); border-radius: 4px; cursor: pointer; min-height: 46px; font-size: 16px; }
.catalog-format-options label:has(input:checked) { border-color: var(--accent); color: var(--accent); background: var(--accent-soft); }
.catalog-format-options input { width: 17px; height: 17px; min-height: 0; margin: 0; accent-color: var(--accent); }
.catalog-format-options label:has(input:focus-visible) { outline: 2px solid var(--accent); outline-offset: 3px; }
#catalog-format-note { margin: 12px 0; color: var(--muted); font-size: 16px; }
.catalog-format .catalog-style-help { margin: 0; padding: 0; border: 0; }
.catalog-style-help summary { font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.6; }
.catalog-style-help h3 { font-size: 18px; }
.catalog-style-help p { margin: 8px 0 0; }
.catalog-toolbar { margin-top: 22px; padding-top: 0; border-top: 0; }
.catalog-card { border-top: 1px solid var(--line); padding: 24px; }
.catalog-card h2 { margin: 12px 0 8px; }
.catalog-card .catalog-industry-tag { margin: 0 0 22px; font-size: 15px; }
.catalog-card-footer { align-items: center; padding-top: 18px; font-size: 16px; }
.catalog-card-footer .btn { min-width: 108px; }
.catalog-complete { color: var(--success); }
.catalog-disclosure { margin-top: 26px; }
.catalog-detail .catalog-modes .btn:last-child { color: var(--accent); background: white; border-color: var(--line); }
.catalog-detail .catalog-modes .btn:last-child:hover { background: var(--accent-soft); border-color: var(--accent); }
@media(max-width:750px) {
  .catalog-grid { gap: 0; border-top: 1px solid var(--line); }
  .catalog-card { border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 22px 0; }
  .catalog-card h2 { font-size: 23px; margin: 7px 0 4px; }
  .catalog-card .catalog-industry-tag { margin-bottom: 12px; }
  .catalog-card-footer { border-top: 0; padding-top: 0; }
  .catalog-format { padding: 18px; }
}
@media(max-width:420px) {
  .catalog-format-options { gap: 8px; }
  .catalog-format-options label { flex: 1 1 auto; padding: 10px; font-size: 15px; }
  .catalog-card-footer .btn { min-height: 44px; }
}
.case-origin-note {color:var(--muted);font-size:15px;line-height:1.5;margin:18px 0 10px}
.case-source-note {border-top:1px solid var(--line);margin:20px 0;padding-top:2px;font-size:16px;line-height:1.55}
.case-source-note summary {font-weight:600;cursor:pointer;min-height:44px;padding:8px 0}
.case-source-note ul,.exhibit-sources ul {padding-left:20px;margin:8px 0}
.case-source-note li {margin:12px 0}
.case-source-note li p {font-size:15px;color:var(--muted);margin:4px 0}
.case-source-note a,.exhibit-sources a {text-underline-offset:3px;overflow-wrap:anywhere}
.exhibit .exhibit-classification {display:inline-block;border-bottom:2px solid var(--accent);font-weight:600;font-size:15px;margin:0 0 10px;padding-bottom:3px}
.exhibit-sources {border-top:1px solid var(--line);padding-top:12px;margin-top:14px;font-size:15px;line-height:1.5}
.exhibit-sources>span {font-weight:600}
.exhibit-sources li {margin:6px 0}
/* Compact public-source exhibits should keep their values beside the labels. */
@media(max-width:600px) {
  .solo-exhibit-panel .exhibit:has(.exhibit-classification):not(:has(thead tr>:nth-child(4))) .data-table {min-width:0;table-layout:fixed}
  .solo-exhibit-panel .exhibit:has(.exhibit-classification):not(:has(thead tr>:nth-child(4))) .data-table th,
  .solo-exhibit-panel .exhibit:has(.exhibit-classification):not(:has(thead tr>:nth-child(4))) .data-table td {padding:10px 6px;white-space:normal}
  .solo-exhibit-panel .exhibit:has(.exhibit-classification):not(:has(thead tr>:nth-child(4))) .data-table th:first-child {width:60%}
  .solo-exhibit-panel .exhibit:has(.exhibit-classification):not(:has(thead tr>:nth-child(4))) .data-table:has(thead tr>:nth-child(3)) th:first-child {width:45%}
  .solo-exhibit-panel .exhibit:has(.exhibit-classification):not(:has(thead tr>:nth-child(4))) .table-scroll-hint {display:none}
}
