/* The catalog belongs in the workbench; a tool page can open it on demand. */
.editor[data-focused] { display: block; }
.tool-switcher { flex: 0 1 auto; min-width: 0; }
.tool-switcher summary { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 0 8px; min-height: 36px; border: 1px solid #8e9b87; border-radius: 2px; color: var(--white); font: 680 .81rem system-ui, sans-serif; cursor: pointer; }
.tool-switcher summary::-webkit-details-marker { display: none; }
.tool-switcher summary::after { content: "+" / ""; color: var(--acid); font: 1.08em var(--mono); }
.tool-switcher[open] summary::after { content: "−" / ""; }
.tool-switcher summary:hover { background: #343e2f; }
.tool-switcher select { display: block; width: 100%; min-width: 0; margin-top: 4px; }
.focus-hero { padding: clamp(23px, 4vw, 42px) 0 19px; }
.focus-hero h1 { font-size: clamp(2.2rem, 5vw, 4.15rem); }
.focus-hero .lede { max-width: 70ch; }
.case-switch { display: flex; flex-wrap: wrap; gap: 4px; margin: 2px 0 6px; }
.case-switch button { border: 1px solid var(--line); border-radius: 2px; background: var(--white); color: var(--ink); padding: 5px 10px; min-height: 38px; font: 650 .83rem system-ui, sans-serif; }
.case-switch button:hover { border-color: var(--ink); }
.case-switch button[aria-pressed="true"] { background: var(--acid); border-color: var(--ink); }
.case-extra { margin: 4px 0 6px; font-size: .83rem; }
.case-extra summary { width: fit-content; cursor: pointer; font-weight: 650; padding: 4px 0; }
.case-custom { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 4px; }
.case-custom input { width: min(100%, 26rem); padding: 7px 9px; border: 1px solid var(--line); background: var(--white); color: var(--ink); border-radius: 2px; font: inherit; }
.replace-toggles { margin-top: 3px; }
.replace-preview { margin: 0; padding: 13px; white-space: pre-wrap; overflow-wrap: anywhere; height: 240px; overflow: auto; resize: vertical; border: 1px solid transparent; color: var(--ink); font: 1rem/1.65 var(--mono); }
.replace-preview:focus-visible { outline-offset: -4px; }
.replace-preview mark { background: #f4d275; color: #352708; border-bottom: 1px solid #80600b; }
.replace-preview .deleted-mark { color: #6c2c22; background: #f6ded8; border-color: #a75b4d; font-size: .8em; padding: 0 2px; }
.pane-header { flex-wrap: wrap; }
.review-jump { margin-left: auto; min-height: 34px; border: 1px solid #7d8d68; color: #243c1b; background: #e5edce; padding: 4px 7px; font-size: .75rem; }
.review-jump:hover:not(:disabled) { background: var(--acid); }
.example-rail { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--line); padding: 12px 0; margin: 19px 0 0; }
.example-rail h2 { margin: 0 0 7px; font-size: .92rem; letter-spacing: 0; }
.example-rail .examples { margin: 0; }
.example-rail .examples figcaption { font: 600 .73rem var(--mono); text-transform: uppercase; letter-spacing: .045em; }
.example-rail p { margin: 8px 0 0; color: var(--muted); font-size: .86rem; }
.prose h3 { margin-top: 1.1em; }
.prose .example-list { padding-inline-start: 1.2rem; }
.prose .example-list li { margin: 0 0 8px; }
@media (max-width: 850px) {
  .tool-switcher summary, .case-switch button { min-height: 44px; }
}
@media (max-width: 620px) {
  .editor[data-focused] .toolbar-more { width: 100%; }
  .replace-preview { height: 127px; padding: 10px; }
  .case-custom input { font-size: 1rem; }
  .review-jump { min-height: 40px; }
}
