/* Text tools reuse the existing Markovo type, color and control system. */
.output-choice { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:14px 0; font-size:14px; }
.output-choice select { min-width:160px; max-width:100%; padding:8px 12px; color:inherit; background:var(--surface,#fffaf1); border:1px solid var(--line,#d7d0c3); border-radius:8px; font:inherit; }
.text-tool-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:48px; padding:52px 0 40px; }
.text-tool-hero h1 { font-size:clamp(34px,5vw,60px); line-height:1.08; letter-spacing:-.035em; margin:12px 0 22px; }
.text-tool-hero .hero-lede { max-width:38rem; }
.text-tool-steps { margin:24px 0 0; padding-left:22px; line-height:1.8; }
.text-tool-content { max-width:860px; margin:0 auto; }
.text-tool-section { padding:28px 0; border-top:1px solid var(--line,#d7d0c3); }
.text-tool-section h2 { margin:0 0 16px; font-size:27px; line-height:1.25; }
.text-tool-section p { margin:0 0 16px; line-height:1.75; }
.text-tool-section pre { overflow:auto; max-width:100%; white-space:pre-wrap; overflow-wrap:anywhere; padding:20px; background:var(--surface,#fffaf1); border:1px solid var(--line,#d7d0c3); border-radius:12px; }
.text-tool-section details { border-top:1px solid var(--line,#d7d0c3); padding:16px 0; }
.text-tool-section summary { cursor:pointer; font-weight:600; line-height:1.5; }
.text-tool-section details p { margin:12px 0 0; }
.text-tool-related { padding:28px 0 48px; }
.text-tool-related a, .text-tool-directory nav a { display:inline-block; margin:0 16px 12px 0; text-underline-offset:3px; }
.text-tool-directory nav { display:flex; flex-wrap:wrap; gap:4px 16px; }
@media (max-width:760px) { .text-tool-hero { grid-template-columns:minmax(0,1fr); gap:24px; padding-top:28px; } .text-tool-hero h1 { font-size:38px; } .text-tool-content { width:100%; } .text-tool-section { padding:24px 0; } }
