.ts-banner{background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--text-heading);margin-bottom:var(--space-6)}
.ts-note{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}
.ts-wrap{overflow-x:auto;margin:var(--space-4) 0 var(--space-6)}
.ts-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);background:var(--card-bg);border:1px solid var(--card-border)}
.ts-table th,.ts-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);vertical-align:top}
.ts-table th{font-weight:600;color:var(--text-heading);background:var(--accent-soft)}
.ts-table td{color:var(--text-muted)}
.ts-list{padding-left:1.25rem;color:var(--text-muted);font-size:var(--text-base);line-height:1.7}
.ts-timeline{margin:var(--space-5) 0}
.ts-step{display:flex;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border-light)}
.ts-time{flex:0 0 130px;font-size:var(--text-xs);font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}
.ts-step h4{font-size:var(--text-md);color:var(--text-heading);margin:0 0 var(--space-1)}
.ts-step p{font-size:var(--text-sm);color:var(--text-muted);margin:0}
.ts-bars{margin:var(--space-5) 0 var(--space-6)}
.ts-bar{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr) 3rem;gap:var(--space-3);align-items:center;font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-3)}
.ts-track{background:var(--border-light);border-radius:var(--radius-full);height:10px;overflow:hidden}
.ts-fill{background:var(--accent);height:100%}
.ts-bar b{color:var(--text-heading);text-align:right}
.ts-sheet{border:2px solid var(--accent);border-radius:var(--radius-lg);background:var(--card-bg);padding:var(--space-5);margin:var(--space-5) 0 var(--space-6)}
.ts-sheet-head{display:flex;justify-content:space-between;gap:var(--space-3);border-bottom:2px solid var(--accent);padding-bottom:var(--space-3);margin-bottom:var(--space-4);color:var(--text-heading)}
.ts-sheet-head span{color:var(--accent);font-size:var(--text-sm);font-weight:600}
.ts-sheet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}
.ts-sheet-grid h4{color:var(--accent);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-2)}
.ts-sheet-grid ul{margin:0;padding-left:1.1rem;font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}
.ts-sheet-foot{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-light);font-size:var(--text-xs);color:var(--text-muted)}
.ts-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);margin:var(--space-8) 0}
.ts-more{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}
.ts-more a{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--card-border);border-radius:var(--radius-full);color:var(--text-muted)}
.ts-more a:hover,.ts-more a.on{border-color:var(--accent);color:var(--accent)}
@media(max-width:600px){.ts-step{flex-direction:column;gap:var(--space-1)}.ts-bar{grid-template-columns:1fr 3rem}.ts-track{grid-column:1/2}}
a.deliverable-link{display:block;color:inherit;text-decoration:none}
a.deliverable-link .service-link{display:inline-block;margin-top:var(--space-3)}
