/* Shared content components use the same tokens; page CSS supplies layout only. */
main .re-page-head{padding:34px 0 42px;margin:0 0 34px;border-bottom:1px solid var(--re-ink)}
main .re-page-head h1{max-width:24ch;margin:0 0 14px;font-size:var(--rw-type-h1);line-height:1.2;letter-spacing:-.025em}
.re-page-head .lead{max-width:58rem;color:var(--re-muted);line-height:1.7}
.re-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;color:var(--re-muted);font-size:12px}
.re-breadcrumb a{text-underline-offset:4px}
main .re-section{padding:26px 0 38px;border-top:1px solid var(--re-line)}
.re-section>h2:first-child{margin:0 0 18px;font-size:18px;letter-spacing:-.025em}
main .re-collection{border-top:1px solid var(--re-ink)}
main .re-collection-row{min-height:118px;padding:20px 6px;border-bottom:1px solid var(--re-line);background:transparent}
main .re-collection-row:hover{background:var(--re-surface)}
main .re-record{border:1px solid var(--re-line);background:var(--re-surface);padding:20px;margin:0 0 14px}
main .re-record h3{margin-top:0}
main .re-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:24px 0 34px;background:var(--re-line);border:1px solid var(--re-line)}
main .re-metrics>article{min-height:110px;padding:18px;background:var(--re-surface)}
.re-context-stack{display:grid;gap:12px}
main .re-context-stack>section{padding:18px;border:1px solid var(--re-line);background:var(--re-surface)}
main .re-editor{display:grid;gap:18px;padding:20px;border:1px solid var(--re-line);background:var(--re-surface)}
main .re-editor input,main .re-editor textarea,main .re-editor select{border-color:var(--re-line);background:var(--re-paper)}
.re-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.re-tabs a{min-height:40px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--re-line);text-decoration:none}
.re-tabs a[aria-current],.re-tabs a:hover{border-color:var(--re-ink);background:var(--re-ink);color:var(--re-surface)}
.re-table-wrap{border:1px solid var(--re-line);background:var(--re-surface)}
.re-table-wrap table{margin:0}
.re-progress{width:100%;height:8px;accent-color:var(--re-ink)}
.re-empty{padding:24px;border:1px dashed var(--re-line);background:rgba(var(--rw-rgb-air),.55)}

/* Owner-only design gallery. These classes also document component states. */
.ds-gallery{display:grid;gap:24px;max-width:1080px;margin:0 auto 80px}
.ds-gallery-links{display:flex;flex-wrap:wrap;gap:10px}
.ds-gallery section{min-width:0;padding:24px;border:1px solid var(--re-line);background:var(--re-surface)}
.ds-gallery h2{margin:0 0 18px;font-size:var(--rw-type-h3);line-height:var(--rw-line-heading)}
.ds-samples{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ds-button{display:inline-flex;min-height:var(--rw-control-size);align-items:center;justify-content:center;padding:9px 14px;border:1px solid var(--re-line);border-radius:var(--rw-radius-small);background:var(--re-surface);color:var(--re-ink);font:inherit;text-decoration:none;cursor:pointer}
.ds-button-primary{border-color:var(--re-accent);background:var(--re-accent);color:var(--re-white)}
.ds-button-quiet{border-color:transparent;background:transparent}
.ds-button-danger{border-color:var(--rw-color-danger);color:var(--rw-color-danger)}
.ds-button:disabled{border-color:var(--re-line);background:var(--re-soft);color:var(--re-muted);cursor:not-allowed}
.ds-button:focus-visible,.ds-field input:focus-visible,.ds-field textarea:focus-visible,.ds-samples a:focus-visible{outline:var(--re-focus);outline-offset:3px}
.ds-field{display:grid;gap:7px;min-width:min(100%,260px);flex:1 1 260px}
.ds-field label{font-size:var(--rw-type-ui);font-weight:600}
.ds-field input,.ds-field textarea{width:100%;min-height:var(--rw-control-size);padding:10px 12px;border:1px solid var(--re-line);border-radius:var(--rw-radius-small);background:var(--re-white);color:var(--re-ink);font:inherit}
.ds-field textarea{min-height:112px;resize:vertical}
.ds-field small{color:var(--re-muted);line-height:1.5}
.ds-field.is-error input{border-color:var(--rw-color-danger)}
.ds-field [role=alert]{color:var(--rw-color-danger)}
.ds-status{display:inline-flex;min-height:32px;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--re-line);border-radius:999px;color:var(--re-ink);font-size:var(--rw-type-ui)}
.ds-status::before{width:8px;height:8px;border:1px solid currentColor;border-radius:50%;background:var(--re-accent-soft);content:""}
.ds-status.is-review::before{background:var(--re-warm)}
.ds-status.is-private::before{background:var(--re-soft)}
.ds-table{width:100%;border-collapse:collapse;text-align:left}
.ds-table caption{padding:0 0 10px;text-align:left;font-weight:650}
.ds-table th,.ds-table td{padding:12px;border-bottom:1px solid var(--re-line);vertical-align:top}
.ds-prose{max-width:72ch;line-height:var(--rw-line-body)}
.ds-prose figure{margin:24px 0;padding:18px;border:1px solid var(--re-line);background:var(--re-paper)}
.ds-figure-illustration{height:72px;display:grid;place-items:center;border:1px solid var(--re-line);text-align:center}
.ds-prose figcaption{margin-top:10px;color:var(--re-muted);font-size:var(--rw-type-ui)}
.ds-prose pre{max-width:100%;overflow:auto;padding:14px;background:var(--re-paper);font:13px/1.6 var(--rw-font-code)}
.ds-dialog{max-width:min(560px,calc(100% - 32px));padding:24px;border:1px solid var(--re-ink);background:var(--re-surface);color:var(--re-ink)}
.ds-dialog::backdrop{background:var(--re-overlay)}

/* Research World */
.re-world-hero{display:block}
.re-world-metrics{display:flex;flex-wrap:wrap;gap:1px;margin:26px 0 0;background:var(--re-line);border:1px solid var(--re-line)}
.re-world-metrics>span{min-width:150px;display:grid;gap:5px;padding:15px 18px;background:var(--re-surface);font-size:11px;color:var(--re-muted)}
.re-world-metrics strong{font-size:24px;color:var(--re-ink);font-weight:650}
.re-quest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--re-line);background:var(--re-line)}
.re-quest-card{min-width:0;min-height:220px;display:flex;flex-direction:column;padding:20px;background:var(--re-surface);color:inherit;text-decoration:none}
.re-quest-card small{color:var(--re-muted);font-size:10px;letter-spacing:.08em}
.re-quest-card h3{margin:34px 0 10px;font-size:21px;line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere}
.re-quest-card p{color:var(--re-muted);line-height:1.55;font-size:13px}
.re-quest-card>span{margin-top:auto;padding-top:15px;border-top:1px solid var(--re-line);font-size:11px}
.re-quest-card:hover{filter:brightness(.98)}
.re-task-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--re-line)}
.re-task-list li{display:grid;grid-template-columns:32px 1fr;gap:12px;min-height:62px;padding:13px 4px;border-bottom:1px solid var(--re-line);align-items:center}
.re-task-list li>span{font-size:20px}
.re-task-list div{display:grid;gap:3px}.re-task-list small{color:var(--re-muted);font-size:10px}.re-task-list .is-done strong{text-decoration:line-through;color:var(--re-muted)}
.re-contribution-list{display:grid;gap:12px}.re-contribution-list article{padding:20px;border:1px solid var(--re-line);background:var(--re-surface)}
.re-contribution-list article>small,.re-contribution-list article>footer{color:var(--re-muted);font-size:11px}.re-contribution-list h3{margin:10px 0;font-size:20px}.re-contribution-list article>footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--re-line)}
.re-world-list{display:grid;border-top:1px solid var(--re-ink)}
.re-world-list>a{display:flex;justify-content:space-between;gap:18px;padding:17px 4px;border-bottom:1px solid var(--re-line);text-decoration:none}.re-world-list>a span{color:var(--re-muted);font-size:11px}
.re-activity-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--re-line)}.re-activity-list li{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:14px 4px;border-bottom:1px solid var(--re-line)}.re-activity-list time,.re-activity-list small{color:var(--re-muted);font-size:11px}.re-activity-list div{display:grid;gap:4px}
.re-json-contract{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--re-line);border:1px solid var(--re-line)}.re-json-contract article{min-width:0;padding:18px;background:var(--re-surface)}
.re-run-list pre,.re-json-contract pre,.re-compare-grid pre{max-width:100%;overflow:auto;padding:12px;border:1px solid var(--re-line);background:var(--re-paper);font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.re-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;border:1px solid var(--re-line);background:var(--re-line)}.re-compare-grid>section{min-width:0;padding:20px;background:var(--re-surface)}.re-compare-grid header{padding-bottom:16px;border-bottom:1px solid var(--re-line)}
.re-studio-dock{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 24px;padding:12px;border:1px solid var(--re-line);background:var(--re-surface)}.re-studio-dock a{display:inline-flex;align-items:center;min-height:40px;padding:0 11px;border:1px solid var(--re-line);text-decoration:none;font-size:12px}.re-studio-dock a:hover{border-color:var(--re-ink)}
.re-plugin-status{padding:14px;border-left:3px solid var(--re-ink);background:var(--re-soft);font-size:13px;line-height:1.55}

@media(max-width:900px){.re-quest-grid{grid-template-columns:1fr 1fr}.re-json-contract,.re-compare-grid{grid-template-columns:1fr}}
@media(max-width:760px){main .re-page-head{padding-top:24px}main .re-metrics{grid-template-columns:1fr}main .re-record,main .re-editor{padding:16px}.re-quest-grid{grid-template-columns:1fr}.re-world-list>a{display:grid}.re-activity-list li{grid-template-columns:1fr}.re-world-metrics>span{flex:1 1 130px}.ds-gallery section{padding:16px}}
