/* Content-bearing illustrations and real, locally served project previews. */
.tm-maint-flow { margin:0; padding:24px; border:1px solid #cfddf1; border-radius:16px; background:linear-gradient(145deg,#f0f5ff,#fff); }
.tm-maint-flow figcaption { margin-bottom:20px; color:var(--td-ink); font-size:1.05rem; font-weight:800; }
.tm-maint-flow ol { margin:0; padding:0; list-style:none; }
.tm-maint-flow li { position:relative; display:flex; align-items:center; gap:14px; min-height:80px; padding:10px 0; }
.tm-maint-flow li + li { border-top:1px solid #dce6f5; }
.tm-flow-icon { display:grid; place-items:center; width:42px; height:42px; flex:none; border:1px solid #cadbf6; border-radius:12px; background:#fff; color:var(--td-blue-dark); }
.tm-flow-icon svg { width:22px; height:22px; }
.tm-maint-flow strong,.tm-maint-flow small { display:block; }
.tm-maint-flow strong { color:var(--td-ink); font-size:1rem; }
.tm-maint-flow small { margin-top:3px; color:var(--td-body); font-size:.85rem; line-height:1.5; }
.tm-flow-number { margin-left:auto; color:#6783af; font-size:.78rem; }
.tm-maint-flow > p { margin:16px 0 0; color:var(--td-body); font-size:.8rem; }
.tm-service-icon { display:inline-grid; place-items:center; width:44px; height:44px; margin-bottom:14px; border-radius:12px; background:var(--td-soft-blue); color:var(--td-blue-dark); }
.tm-service-icon svg { width:22px; height:22px; }
.tm-content-example { margin:0; padding:24px; border:1px solid #cfddf1; border-radius:16px; background:#f4f7fc; }
.tm-content-example figcaption { color:var(--td-ink); font-size:.9rem; font-weight:800; }
.tm-example-request { display:flex; gap:12px; align-items:flex-start; margin:20px 0; padding:16px; border-radius:12px; background:#fff; }
.tm-example-request svg { width:22px; height:22px; flex:none; color:var(--td-blue-dark); }
.tm-example-request p { margin:0; font-size:.95rem; }
.tm-example-comparison { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.tm-example-comparison > div { min-width:0; padding:16px; border:1px solid var(--td-line); border-radius:10px; background:#fff; }
.tm-example-comparison span,.tm-example-comparison strong { display:block; }
.tm-example-comparison span { margin-bottom:14px; color:var(--td-body); font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.tm-example-comparison strong { color:var(--td-ink); font-size:.85rem; }
.tm-example-comparison p { margin:6px 0 0; font-size:.9rem; }
.tm-example-after { border-color:#b8d8c8!important; }
.tm-example-after span { color:#166344; }
.tm-example-after mark { padding:2px 3px; color:#125638; background:#e4f5ec; }
.tm-content-example .tm-example-caption { margin:16px 0 0; font-size:.78rem; line-height:1.5; }
.tm-project-previews { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.tm-project-preview { margin:0; min-width:0; overflow:hidden; border:1px solid var(--td-line); border-radius:12px; background:#fff; }
.tm-project-preview img { display:block; width:100%; height:auto; aspect-ratio:1100/645; object-fit:contain; background:#fff; }
.tm-project-preview figcaption { padding:16px 18px; }
.tm-project-preview strong,.tm-project-preview small { display:block; }
.tm-project-preview strong { font-size:1rem; color:var(--td-ink); }
.tm-project-preview small { margin-top:4px; color:var(--td-body); font-size:.85rem; }
.tm-project-gallery { margin-top:24px; padding:18px 20px; border:1px solid var(--td-line); border-radius:12px; }
.tm-project-gallery > summary { min-height:44px; display:flex; align-items:center; gap:14px; color:var(--td-blue-dark); font-weight:750; cursor:pointer; list-style:none; }
.tm-project-gallery > summary::after { content:'+'; margin-left:auto; font-size:1.5rem; }
.tm-project-gallery[open] > summary::after { content:'−'; }
.tm-project-gallery .tm-web-project-wall { margin-top:20px; }
.tm-project-gallery summary::-webkit-details-marker { display:none; }
.tm-article-toc { margin:0 0 28px; padding:18px 22px; border:1px solid var(--td-line); border-radius:12px; background:var(--td-soft); }
.tm-article-toc summary { min-height:44px; color:var(--td-ink); font-weight:750; cursor:pointer; }
.tm-article-toc ol { margin:12px 0 0; padding-left:22px; display:grid; gap:9px; font-size:.93rem; }
.tm-article-toc a { text-decoration:none; }
.tm-knowledge-diagram { margin:30px 0; padding:22px; border:1px solid #cfddf1; border-radius:12px; background:#f4f7fc; }
.tm-knowledge-diagram figcaption { margin-bottom:18px; color:var(--td-ink); font-weight:750; }
.tm-diagram-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
.tm-diagram-steps li { margin:0!important; padding:16px; border:1px solid var(--td-line); border-radius:10px; background:#fff; }
.tm-diagram-steps span,.tm-diagram-steps strong { display:block; }
.tm-diagram-steps span { margin-bottom:12px; color:var(--td-blue-dark); font-size:.78rem; font-weight:800; }
.tm-diagram-steps strong { font-size:.95rem; color:var(--td-ink); }
.tm-diagram-steps small { display:block; margin-top:6px; color:var(--td-body); font-size:.85rem; line-height:1.5; }
.tm-knowledge-diagram > p { margin:16px 0 0; font-size:.85rem; }
@media(max-width:720px) { .tm-project-previews { grid-template-columns:1fr; gap:16px; } .tm-diagram-steps { grid-template-columns:1fr; } .tm-maint-flow,.tm-content-example { padding:20px; } }
@media(max-width:720px) {
 .tm-content-example { padding:16px; }
 .tm-example-request { margin:12px 0; padding:12px; }
 .tm-example-comparison { grid-template-columns:1fr 1fr; gap:8px; }
 .tm-example-comparison > div { padding:12px 8px; }
 .tm-example-comparison span { margin-bottom:8px; font-size:.7rem; }
 .tm-example-comparison strong { font-size:.78rem; }
 .tm-example-comparison p { font-size:.8rem; }
 .tm-maint-flow { padding:16px; }
 .tm-maint-flow li { min-height:68px; gap:10px; }
 .tm-flow-icon { width:34px; height:34px; }
}
