.td-wrap{max-width:var(--content-max);margin:0 auto;padding:var(--sp-4) var(--page-gutter) var(--sp-6)}
.td-crumbs{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--sp-3)}
.td-head{display:flex;gap:var(--sp-4);align-items:flex-start;flex-wrap:wrap;margin-bottom:var(--sp-4)}
.td-head h1{font-size:var(--text-3xl);margin:0 0 var(--sp-2)}
.td-head>div:not(.td-logo){flex:1 1 280px}
.td-logo{width:64px;height:64px;border-radius:var(--radius-md);flex:none}
.td-logo--ph{display:grid;place-items:center;background:var(--color-accent-soft);color:var(--color-text);border:1px dashed var(--color-border-strong);font-size:var(--text-xl);font-weight:var(--weight-bold,700)}
.td-oneliner{font-size:var(--text-lg);margin:0 0 var(--sp-2)}
.td-meta{color:var(--color-text-muted);font-size:var(--text-sm);margin:0 0 var(--sp-2)}
.td-visit{background:var(--color-accent);color:var(--color-on-accent);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-pill);text-decoration:none;font-weight:600}
.td-grid{display:grid;grid-template-columns:3fr 2fr;gap:var(--sp-4);margin-top:var(--sp-4)}
@media(max-width:800px){.td-grid{grid-template-columns:1fr}}
.td-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--sp-4);margin-bottom:var(--sp-4)}
.td-card h2{font-size:var(--text-xl);margin:0 0 var(--sp-3);display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}
.td-dl{margin:0}.td-row{display:grid;grid-template-columns:9rem 1fr;gap:var(--sp-3);padding:var(--sp-2) 0;border-top:1px solid var(--color-border)}
.td-row:first-child{border-top:0}.td-row dt{color:var(--color-text-muted);font-size:var(--text-sm)}.td-row dd{margin:0;overflow-wrap:anywhere}
@media(max-width:480px){.td-row{grid-template-columns:1fr;gap:0}}
.td-unknown{font-style:italic;color:var(--color-text-muted)}
.td-note,.td-muted{color:var(--color-text-muted);font-size:var(--text-sm)}
.td-list,.td-plans{margin:0;padding-left:var(--sp-4)}.td-list li,.td-plans li{margin-bottom:var(--sp-2);overflow-wrap:anywhere}
.td-chip{display:inline-block;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);padding:0 var(--sp-3);font-size:var(--text-sm);text-decoration:none;color:var(--color-text)}

/* Option 2 (user-selected 2026-10-27): category icon in detail hero; dashed placeholder border removed for icon variant */
.td-logo--cat { border-style: solid; }
.td-logo--cat .cat-icon { width: 1.9rem; height: 1.9rem; display: block; }
/* ---------- Unified visual system additions (2026-10-27) ---------- */

.td-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:var(--sp-3);margin:0 0 var(--sp-4)}
.td-stats:has(>:nth-child(4)){grid-template-columns:1fr 1fr}
.td-stat{background:var(--color-surface-raised,#f0f3f9);border:1px solid var(--color-border,#d7dce6);border-radius:var(--radius-md,.75rem);padding:var(--sp-3)}
.td-stat-label{display:block;font-size:var(--text-xs,.75rem);color:var(--color-text-muted,#586278);margin-bottom:2px}
.td-stat-value{display:block;font-weight:var(--weight-bold,700);font-size:var(--text-base,1rem);overflow-wrap:anywhere}
.td-subhead{font-size:var(--text-base,1rem);margin:0 0 var(--sp-3)}
.td-plan-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--sp-3);margin-bottom:var(--sp-4)}
.td-plan-card{border:1px solid var(--color-border,#d7dce6);border-radius:var(--radius-md,.75rem);padding:var(--sp-3);background:var(--color-bg,#f8f9fc)}
.td-plan-name{margin:0 0 var(--sp-1,.25rem);font-weight:var(--weight-bold,700);font-size:var(--text-base,1rem)}
.td-plan-price{margin:0 0 var(--sp-2,.5rem);font-size:var(--text-lg,1.125rem);font-weight:var(--weight-bold,700);color:var(--color-accent,#3154d5);overflow-wrap:anywhere}
.td-plan-note{margin:0;font-size:var(--text-sm,.875rem);color:var(--color-text-muted,#586278);overflow-wrap:anywhere}
.td-dl--meta{margin-top:var(--sp-3)}
.td-platform{display:inline-block;background:var(--color-surface-raised,#f0f3f9);border:1px solid var(--color-border,#d7dce6);border-radius:var(--radius-pill,999px);padding:1px var(--sp-3,.75rem);margin:0 var(--sp-1,.25rem) var(--sp-1,.25rem) 0;font-size:var(--text-sm,.875rem)}
.td-chip[data-cat]{background:var(--cat-soft);border-color:var(--cat-border);color:var(--cat-strong)}
.td-logo--cat[data-cat]{background:var(--cat-soft);color:var(--cat-strong);border-color:var(--cat-border)}
.td-tags{margin-bottom:var(--sp-3)}
/* Reader-facing plan and availability notes */
.td-card{min-width:0}.td-note,.td-plan-note{line-height:1.6}.td-card p,.td-points li{overflow-wrap:anywhere}
.td-budget{margin:1.5rem 0}.td-budget h3{font-size:1rem;margin-bottom:.75rem}.td-points{padding-left:1.2rem;margin:.5rem 0}.td-points li{margin:.65rem 0;line-height:1.65}
.td-details{border-top:1px solid var(--color-border);padding:.4rem 0}.td-details summary,.td-region summary{cursor:pointer;min-height:44px;padding:.65rem 0;font-weight:600;line-height:1.5}.td-details summary:focus-visible,.td-region summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}
.td-caution{background:var(--color-surface-raised);border-left:3px solid var(--color-accent);padding:1rem;margin:1rem 0;line-height:1.6}.td-caution p{margin:.5rem 0}.td-caution a{display:inline-block;padding:.3rem 0}
.td-allowance{line-height:1.6}.td-region{border-top:1px solid var(--color-border)}.td-region summary>span:first-child{display:inline}.td-region-status{display:block;font-size:.875rem;font-weight:400;color:var(--color-text-muted);padding-left:1rem}.td-region-body{line-height:1.65;padding:0 .5rem 1rem}.td-region-body a{display:inline-block;padding:.5rem 0}
@media(max-width:480px){.td-stats{grid-template-columns:1fr 1fr}.td-stats .td-stat:first-child{grid-column:1/-1}.td-plan-cards{grid-template-columns:1fr}.td-card{padding:1.1rem}.td-points li{line-height:1.7}.td-head>div:not(.td-logo){flex-basis:200px}}

/* ---------- worker01 detail visual patch (2026-10-28) ---------- */
/* Evidence band: dated trust anchor, adapts Wirecutter/TechRadar pattern. */
.td-evi{list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);margin:0 0 var(--sp-3);padding:var(--sp-3) var(--sp-4);
  background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}
.td-evi__item{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--text-sm,.875rem);color:var(--color-text-muted)}
.td-evi__item strong{color:var(--color-text);font-weight:var(--weight-semibold,600)}
.td-evi__item svg{color:var(--color-accent);flex:none}
/* On-this-page anchor nav (Wirecutter sections pattern). */
.td-toc{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin:0 0 var(--sp-4);font-size:var(--text-sm,.875rem)}
.td-toc__label{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs,.75rem);text-transform:uppercase;letter-spacing:var(--tracking-meta)}
.td-toc a{color:var(--color-text);text-decoration:none;border:1px solid var(--color-border);border-radius:var(--radius-pill,999px);padding:2px var(--sp-3);background:var(--color-surface)}
.td-toc a:hover{border-color:var(--color-accent);color:var(--color-accent)}
@media(max-width:560px){
  .td-toc{flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--sp-1)}
  .td-toc a{flex:none}
  .td-evi{gap:var(--sp-1) var(--sp-3);padding:var(--sp-2) var(--sp-3)}
  .td-evi__item{font-size:var(--text-xs,.75rem)}
  .td-logo{width:48px;height:48px}
  .td-head h1{font-size:var(--text-2xl,1.5rem)}
}
/* worker01 v2: keep the TOC label on one line inside the scroll row. */
.td-toc__label{flex:none}

/* ---------- Colour skin (2026-10-29): category accent on the detail page ---------- */
.td-wrap[data-cat]{--td-acc:var(--cat-strong);--td-soft:var(--cat-soft);--td-bord:var(--cat-border)}
.td-wrap[data-cat] .td-head{background:linear-gradient(135deg,var(--td-soft),var(--color-surface,#fff) 70%);border:1px solid var(--td-bord);border-radius:var(--radius-lg,1rem);padding:var(--sp-4,1.25rem)}
.td-wrap[data-cat] .td-head h1{color:var(--td-acc)}
.td-wrap[data-cat] .td-visit{background:var(--td-acc);color:#fff}
.td-wrap[data-cat] .td-card{border-top:4px solid var(--td-acc);box-shadow:0 2px 10px rgba(23,29,45,.05)}
.td-wrap[data-cat] .td-card h2{color:var(--td-acc)}
.td-wrap[data-cat] .td-stat{background:var(--td-soft);border-color:var(--td-bord)}
.td-wrap[data-cat] .td-stat-value{color:var(--td-acc)}
.td-wrap[data-cat] .td-plan-card{background:var(--color-surface,#fff);border:1px solid var(--td-bord);border-top:4px solid var(--td-acc)}
.td-wrap[data-cat] .td-plan-price{color:var(--td-acc)}
.td-wrap[data-cat] .td-evi{background:var(--td-soft);border-color:var(--td-bord)}
.td-wrap[data-cat] .td-evi__item svg{color:var(--td-acc)}
.td-wrap[data-cat] .td-toc a{background:var(--td-soft);border-color:var(--td-bord);color:var(--td-acc);font-weight:600}
.td-wrap[data-cat] .td-toc a:hover{background:var(--td-acc);color:#fff;border-color:var(--td-acc)}
.td-wrap[data-cat] .td-row dt{color:var(--td-acc);font-weight:600}
.td-wrap[data-cat] .td-caution{border-left-color:var(--td-acc);background:var(--td-soft)}
.td-wrap[data-cat] .td-region summary{color:var(--td-acc)}
.td-wrap[data-cat] .td-platform{background:var(--td-soft);border-color:var(--td-bord);color:var(--td-acc)}
