/* Hypothesis Discovery components; site.css owns the shared shell. */
.discovery-main{--hd-accent:#a04f52;--hd-line:#e4e4e0;--hd-muted:#666}
.discovery-main section{scroll-margin-top:100px}
.hd-intro{padding:68px 0 10px}
.hd-intro h1{margin-bottom:24px}
.discovery-main .hd-intro>p{max-width:850px}
.hd-eyebrow{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--hd-accent)}
.hd-lead{font-size:clamp(18px,2vw,23px);line-height:1.6;color:#555}
.hd-intro-links{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:26px;font-size:14px}
.hd-intro-links a,.hd-section>p>a{color:var(--hd-accent);text-decoration:underline;text-underline-offset:4px}
.hd-section{margin-top:56px;padding-top:32px;border-top:1px solid var(--hd-line)}
.hd-section>p{max-width:900px}
.hd-section-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin-bottom:16px}
.hd-section-heading h2{margin:0}
.hd-badge{display:inline-block;border:1px solid #d9c8c8;border-radius:999px;padding:3px 10px;font-size:11px;line-height:1.6;color:#854a4c;background:#fbf5f5}
.hd-description{font-size:14px;color:#555}
.hd-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;margin:26px 0 20px}
.hd-filters label{display:flex;flex-direction:column;gap:6px;min-width:145px}
.hd-filters label>span{font-size:12px;color:var(--hd-muted)}
.hd-filters input,.hd-filters select{height:40px;max-width:270px;padding:7px 10px;border:1px solid #ccc;border-radius:5px;background:#fff;color:#222;font:inherit;font-size:13px}
.hd-filters input{width:230px}
.hd-text-button{border:0;background:none;padding:8px 2px;color:#555;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:13px}
.hd-filters .hd-text-button{margin-left:auto}
.hd-table-scroll{overflow-x:auto;overscroll-behavior-x:contain}
.hd-table-scroll:focus-visible{outline:3px solid #7c9b52;outline-offset:4px}
.hd-results-table{border-collapse:collapse;width:100%;min-width:665px;font-size:14px;text-align:right;font-variant-numeric:tabular-nums}
.hd-results-table thead{border-top:1.5px solid #444;border-bottom:1px solid #aaa}
.hd-results-table th,.hd-results-table td{padding:18px 16px;border-bottom:1px solid var(--hd-line);vertical-align:middle}
.hd-results-table thead th{font-size:12px;font-weight:600;white-space:nowrap}
.hd-results-table th:first-child{text-align:left;padding-left:4px}
.hd-results-table th:last-child,.hd-results-table td:last-child{padding-right:4px}
.hd-results-table th small{display:block;margin-top:5px;color:#777;font-size:10px;font-weight:400}
.hd-results-table tbody tr:hover{background:#faf9f7}
.hd-model-button{border:0;padding:0;background:none;text-align:left;font:inherit;font-weight:600;color:#333;text-decoration:underline;text-decoration-color:#c8b8b8;text-underline-offset:4px;cursor:pointer}
.hd-model-button:hover{color:var(--hd-accent)}
.hd-results-table .hd-rate{font-weight:600;color:var(--hd-accent);font-size:18px;white-space:nowrap}
.hd-table-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;margin:12px 0;color:#777;font-size:12px}
.hd-table-meta p{margin:0}
.hd-note{font-size:12px;color:#6d6d6d;line-height:1.7}
.hd-empty{text-align:center;padding:28px;color:#666}
.hd-empty[hidden]{display:none}
.hd-empty p{margin:0}
.hd-formula{display:flex;flex-direction:column;gap:10px;padding:24px;border-left:3px solid var(--hd-accent);background:#faf7f6;margin:24px 0}
.hd-formula>span{color:var(--hd-accent);font-size:13px}
.hd-formula strong{font-size:clamp(15px,1.8vw,20px);font-weight:500;line-height:1.6}
.hd-flow{list-style:none;margin:24px 0;padding:0;max-width:920px}
.hd-flow li{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--hd-line)}
.hd-step{font-variant-numeric:tabular-nums;font-size:13px;color:var(--hd-accent);padding-top:3px}
.hd-flow h3{margin:0 0 8px;font-size:17px;font-weight:600}
.hd-flow p{margin:0;font-size:14px;line-height:1.8;color:#555}
.hd-databases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;margin:24px 0;padding:0;max-width:850px}
.hd-databases li{border:1px solid var(--hd-line);padding:14px 16px;border-radius:5px;font-size:13px;background:#fcfcfb}
.hd-dialog{border:1px solid #c8c8c2;border-radius:10px;width:min(620px,94vw);max-height:88vh;padding:0;background:#fff;color:#222;box-shadow:0 12px 50px #0002}
.hd-dialog::backdrop{background:#0006}
.hd-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 24px;border-bottom:1px solid #e4e4e0;font-size:12px;color:#666}
.hd-dialog-header button{border:0;background:none;padding:5px;text-decoration:underline;font:inherit;cursor:pointer}
.hd-dialog #hd-details-content{padding:26px}
.hd-dialog h2{font-size:28px;margin:0 0 8px}
.hd-dialog p{font-size:14px;line-height:1.8;color:#555}
.hd-dialog .hd-detail-status{font-size:12px;color:#854a4c}
.hd-dialog .hd-detail-rate{font-size:42px;font-weight:600;color:#a04f52;margin:22px 0 16px;line-height:1.2}
.hd-detail-rate span{display:block;margin-top:8px;font-size:12px;font-weight:400;color:#666}
.hd-detail-counts{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px 0;margin:0;border-block:1px solid #e4e4e0}
.hd-detail-counts dt{font-size:12px;color:#666}
.hd-detail-counts dd{margin:6px 0 0;font-size:24px;font-variant-numeric:tabular-nums}
.hd-detail-equation{font-variant-numeric:tabular-nums}
.hd-detail-equation span{font-size:11px;color:#777}
.hd-noscript{margin:30px;padding:20px;border:1px solid #aaa}
@media(max-width:650px){.hd-section{margin-top:40px;padding-top:24px}.hd-filters label{flex:1;min-width:calc(50% - 14px)}.hd-filters input,.hd-filters select{width:100%;max-width:none}.hd-filters .hd-text-button{margin-left:0}.hd-databases{grid-template-columns:repeat(2,minmax(0,1fr))}.hd-flow li{grid-template-columns:30px 1fr;gap:10px}.hd-dialog #hd-details-content{padding:22px}.hd-formula{padding:18px}}
.hd-results-table{min-width:790px}
.hd-domain-heading{margin:32px 0 16px;font-size:20px}
.hd-domain-table{min-width:930px}
.hd-dialog h3{font-size:16px;margin:25px 0 12px}
.hd-detail-domains{margin:0;padding:0;font-size:13px}
.hd-detail-domains>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #eee;padding:9px 0}
.hd-detail-domains dt{color:#666}
.hd-detail-domains dd{margin:0;font-variant-numeric:tabular-nums}
@media(max-width:760px){.hd-intro{padding-top:45px}}
