/* Presentation only; load from the existing child theme. Scoped against Bricks/commerce styles. */
.scr,.scr-editorial { --scr-ink:var(--ink,#0b0b0f); --scr-pink:var(--pink-700,#c81e63); color:var(--scr-ink); font-family:var(--body,"Hanken Grotesk",sans-serif); line-height:1.6; max-width:1280px; margin-inline:auto; width:100%; }
.scr {padding:clamp(16px,3vw,32px); background:#fff; border:1px solid #dddde4; border-radius:20px; margin-block:24px;}
.scr * {box-sizing:border-box;} .scr [hidden] {display:none!important;}
.scr p,.scr details,.scr figure {margin:0 0 20px;} .scr h3 {font-family:var(--display,Archivo,sans-serif);font-size:clamp(22px,3vw,30px);line-height:1.2;margin:36px 0 16px;}
.scr a {color:var(--scr-pink);text-decoration:underline;text-underline-offset:.18em;overflow-wrap:anywhere;}
.scr :focus-visible {outline:3px solid #0b0b0f;outline-offset:4px;}
.scr-warning {background:#fff2f8;border-left:5px solid #c81e63;padding:16px;color:#0b0b0f;}
.scr-meta,.scr small {color:#50505e;font-size:14px;} .scr small {display:block;margin-top:8px;}
.scr summary {cursor:pointer;font-weight:700;min-height:44px;padding-block:8px;}
.scr-filters {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:end;margin:24px 0;}
.scr-filters>div {min-width:0;} .scr label {color:#0b0b0f;display:block;font-weight:700;margin-bottom:7px;}
.scr input,.scr select,.scr button {font:inherit;color:#0b0b0f;min-height:48px;border:1px solid #777785;border-radius:8px;padding:10px 12px;max-width:100%;width:100%;background:white;}
.scr select {text-overflow:ellipsis;appearance:auto!important;} .scr button {background:#0b0b0f;color:white;cursor:pointer;font-weight:700;border-radius:30px;}
.scr button.scr-reset {background:#fff;color:#0b0b0f;} .scr-count {font-weight:700;} .scr-empty {border:2px solid #c81e63;padding:16px;}
.scr-downloads {display:flex;gap:12px 24px;flex-wrap:wrap;align-items:center;} .scr-downloads a {min-height:44px;padding-block:10px;}
.scr-scroll {overflow:auto;max-width:100%;border:1px solid #d7d7df;border-radius:12px;}
.scr table {border-collapse:collapse;width:100%;min-width:820px;font-size:15px;table-layout:fixed;}
.scr caption {text-align:left;font-weight:700;padding:16px;color:#0b0b0f;background:#fff;}
.scr th,.scr td {text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid #d7d7df;overflow-wrap:anywhere;}
.scr thead {background:#f6f6f9;} .scr th:nth-child(1) {width:21%;} .scr th:nth-child(2) {width:18%;}.scr th:nth-child(3) {width:17%;}.scr th:nth-child(4) {width:33%;}.scr th:nth-child(5) {width:11%;}
.scr tbody tr:last-child>* {border-bottom:0;} .scr dl {margin:0;} .scr dt {font-weight:700;} .scr dd {margin:0 0 8px;} .scr td p {margin-top:12px;}
.scr figure {padding:16px;border:1px solid #d7d7df;border-radius:12px;overflow:auto;}
.scr svg {display:block;width:100%;min-width:1000px;height:auto;} .scr figcaption {font-size:14px;color:#50505e;}
.scr-sources {padding-left:24px;} .scr-sources li {margin-bottom:24px;scroll-margin-top:140px;} .scr-sources p {margin:8px 0;}
.scr-editorial {padding:clamp(18px,4vw,34px);gap:20px;} .scr-editorial h1 {font-family:var(--display,Archivo,sans-serif);font-size:clamp(32px,5vw,60px);line-height:1.06;letter-spacing:-.02em;max-width:1000px;}
.scr-editorial h2 {font-size:clamp(24px,3vw,36px);line-height:1.2;margin-top:20px;} .scr-editorial p {max-width:80ch;} .scr-editorial a {color:#c81e63;text-decoration:underline;}
@media(min-width:1100px){.scr-filters{grid-template-columns:1.2fr 1fr 1.3fr 1fr}.scr-filters button{width:auto;justify-self:start;padding-inline:24px;}}
@media(max-width:600px){.scr{padding:16px;border-radius:12px}.scr-filters{grid-template-columns:1fr}.scr figure{padding:8px}.scr-downloads{display:block}.scr-downloads a{display:block}.scr table{font-size:14px}}
@media(prefers-reduced-motion:reduce){.scr *{scroll-behavior:auto!important;transition:none!important}}
@media print{.scr-filters,.scr-downloads{display:none}.scr-scroll{overflow:visible}.scr table{min-width:0}.scr{border:0;padding:0}.scr figure{break-inside:avoid}.scr a{color:#000}}




.scr-editorial{align-items:stretch!important;text-align:left}.scr p{max-width:none}.scr-actions{grid-column:1 / -1;display:flex;gap:12px;flex-wrap:wrap}.scr-actions button{width:auto;padding-inline:24px}.scr-scroll-hint{position:sticky;left:0;width:fit-content;max-width:100%!important;font-size:14px;font-weight:700;background:#fff2f8;padding:8px}.scr figcaption strong{display:block;color:#0b0b0f}
@media(max-width:600px){.scr-actions{flex-direction:column}.scr-actions button{width:100%}}

/* Real-data editorial system: native Bricks sections, no flattened page. */
.scr-editorial{padding:48px 32px;gap:24px;align-items:stretch!important}.scr-hero{padding-top:64px;padding-bottom:48px;background:#fff2f8}.scr-hero h1{max-width:1000px}.scr-eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700;color:#a3144c}.scr-held-label{font-weight:700;font-size:14px;border-left:4px solid #c81e63;padding:12px 16px;background:white}.scr-lede{font-size:22px;line-height:1.5}.scr-stat-line{font:700 clamp(22px,3vw,30px)/1.3 var(--display,Archivo,sans-serif)}.scr-findings{border-bottom:1px solid #dddde4}.scr-methods{background:#f6f6f9}.scr-explorer-section{padding:0 16px}.scr-explorer-section>.brxe-shortcode{width:100%;max-width:100%}.scr-publication{background:#fff2f8}.scr-asset-status{padding:24px;border:1px solid #c81e63;border-radius:12px}.scr h2{font:700 clamp(26px,3vw,36px)/1.15 var(--display,Archivo,sans-serif);margin:16px 0 24px}.scr td details dl{font-size:14px;line-height:1.5}.scr td details[open]{min-width:240px}.scr td dd{white-space:normal;overflow-wrap:anywhere}.scr-chart-panel{border-bottom:1px solid #dddde4;padding:8px 0}.scr-chart-panel>summary{font-weight:600;overflow-wrap:anywhere}.scr-timeline{padding:0 0 0 24px;border-left:3px solid #c81e63;list-style:none}.scr-timeline li{margin:0 0 24px;padding:16px;background:#f6f6f9;border-radius:8px}.scr-timeline h4{font:700 20px/1.3 var(--display,Archivo,sans-serif);margin:8px 0 16px}.scr-timeline p{margin:0 0 8px}.scr-date{font-weight:700;color:#a3144c}.scr-pagination{display:flex;gap:24px;padding:24px 0}.scr-pagination a,.scr-nojs-reset{display:inline-flex;align-items:center;min-height:44px}.scr[data-enhanced] .scr-nojs-reset{display:none}.scr-sources li{margin:0 0 8px}.scr-sources summary{overflow-wrap:anywhere}.scr-source-note{font-size:14px}.scr-editorial .scr{max-width:100%}.scr-page-count{font-size:14px;color:#50505e}
@media(max-width:600px){.scr-editorial{padding:32px 20px;gap:20px}.scr-explorer-section{padding:0 8px}.scr-lede{font-size:19px}.scr-hero h1{font-size:36px}.scr-timeline{padding-left:12px}.scr-timeline li{padding:12px}.scr-filters{gap:16px}.scr table{min-width:850px}.scr-chart-panel summary{font-size:15px}}

.scr-study-nav a[aria-current=page]{color:#fff;background:#a3144c;padding:4px 12px;border-radius:4px;text-decoration:none}.scr-private-note{font-weight:600}

/* GET forms and long research tables must not fight smooth-scroll animations. */
html:has(.scr){scroll-behavior:auto}

.scr figure,.scr figcaption,.scr figcaption li{text-align:left}.scr figcaption ul{padding-left:24px;margin:12px 0}.scr figcaption li{padding:4px 0}

/* Keep the table caption readable before horizontal table scrolling. */
.scr caption{white-space:normal;max-width:calc(100vw - 72px);text-align:left}

/* Long unbroken source excerpts (JSON-like option strings, joined venue names) must wrap, never widen the viewport. */
.scr-sources,.scr-sources li,.scr-sources details{min-width:0;max-width:100%}
.scr-sources li,.scr-sources li *{overflow-wrap:anywhere;word-break:break-word}
/* Explorer inside a narrow blog reading column (post content). */
.brxe-post-content .scr{max-width:100%;margin-inline:0}

/* Static research posts (blog reading column): inline SVG charts and client-side pagination. */
.scr-chart{margin:24px 0;padding:16px;border:1px solid #dddde4;border-radius:12px;background:#fff;max-width:100%}
.scr-chart svg{display:block;width:100%;height:auto;max-width:640px;font-family:var(--body,"Hanken Grotesk",sans-serif)}
.scr-chart figcaption{margin-top:12px;font-size:14px;line-height:1.5;color:#50505e;text-align:left}
.scr-pagination{align-items:center;flex-wrap:wrap;gap:12px 16px}
.scr-pagination button{width:auto;padding-inline:20px}
.scr-pagination button:disabled{opacity:.4;cursor:default}
.scr-pagination .scr-page-count{margin:0}
.scr-static{margin-inline:0}
.scr-static h3{margin-top:32px}
@media(max-width:600px){.scr-chart{padding:10px}.scr-pagination button{flex:1 1 40%}}
/* Very tall research articles: stop the single-article column wrapping the post navigation sideways. Scoped to research posts only. */
.brxe-block:has(> .brxe-post-content .scr-static){flex-wrap:nowrap}
/* Research article tables: keep words whole and let wide tables scroll inside their own box on small screens. */
.brxe-post-content:has(.scr-static) .wp-block-table{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.brxe-post-content:has(.scr-static) .wp-block-table td,.brxe-post-content:has(.scr-static) .wp-block-table th{word-break:normal;overflow-wrap:normal;hyphens:none}
.brxe-post-content:has(.scr-static) .wp-block-table figcaption{text-align:left}
@media(max-width:700px){.brxe-post-content:has(.scr-static) .wp-block-table table{min-width:560px;table-layout:auto}}

/* Mobile: summary tables stack into labelled rows (labels added by the explorer script; without JS they scroll). */
.brxe-post-content:has(.scr-static) h1,.single-post .brxe-heading h1,.single-post h1.brxe-heading{text-wrap:balance}
@media(max-width:700px){
.brxe-post-content .wp-block-table.scr-stack{overflow:visible}
.brxe-post-content .wp-block-table.scr-stack table{min-width:0!important;width:100%;border:0}
.brxe-post-content .wp-block-table.scr-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.brxe-post-content .wp-block-table.scr-stack table,.brxe-post-content .wp-block-table.scr-stack tbody{display:block}
.brxe-post-content .wp-block-table.scr-stack tbody tr{display:block;border:1px solid #d7d7df;border-radius:10px;padding:6px 14px;margin:0 0 12px}
.brxe-post-content .wp-block-table.scr-stack td,.brxe-post-content .wp-block-table.scr-stack th{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:12px;border:0;border-bottom:1px solid #eeeef2;padding:8px 0;text-align:left;overflow-wrap:anywhere}
.brxe-post-content .wp-block-table.scr-stack tr td:last-child{border-bottom:0}
.brxe-post-content .wp-block-table.scr-stack td::before{content:attr(data-label);font-weight:700;color:#0b0b0f}
.brxe-post-content .wp-block-table.scr-stack td:first-child{font-weight:700}
}
/* Source register: collapsed by default so the long excerpt list doesn't dominate the page. */
.scr-register{margin:32px 0 0;border:1px solid #dddde4;border-radius:12px;background:#f6f6f9}
.scr-register>summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:16px 20px;list-style:none}
.scr-register>summary::-webkit-details-marker{display:none}
.scr-register-title{font:700 clamp(20px,2.4vw,24px)/1.25 var(--display,Archivo,sans-serif)}
.scr-register-count{font-size:14px;font-weight:700;color:#a3144c}
.scr-register-count::after{content:' +'}
.scr-register[open] .scr-register-count::after{content:' −'}
.scr-register>.scr-source-note,.scr-register>.scr-sources{margin-left:20px;margin-right:20px}
.scr-register[open]{background:#fff}

/* Download buttons in research posts: same breathing room as the paragraphs around them. */
.brxe-post-content .wp-block-buttons{margin-block:24px;gap:12px 16px}

/* Research tables on desktop: size columns to content, keep short values on one line (Tom review 29 Sep). */
@media(min-width:701px){.brxe-post-content:has(.scr-static) .wp-block-table table.has-fixed-layout{table-layout:auto}
.brxe-post-content:has(.scr-static) .wp-block-table td,.brxe-post-content:has(.scr-static) .wp-block-table th{font-size:15px;padding:8px 10px}
.brxe-post-content:has(.scr-static) .wp-block-table td:not(:first-child){white-space:nowrap}}
