/* Restrained, category-scoped tokens; inherited site text ensures both-theme contrast. */
[data-tool-category] { --tool-accent: #4f2d7f; }
[data-tool-category="tools-analysis-reporting"] { --tool-accent: #4f2d7f; }
[data-tool-category="tools-data-development"] { --tool-accent: #28657a; }
[data-tool-category="tools-systems-automation"] { --tool-accent: #357051; }
[data-tool-category="tools-crm-constituent-data"] { --tool-accent: #865b24; }
[data-tool-category="tools-ai-assisted-development"] { --tool-accent: #75507f; }
[data-tool-category="tools-personal-infrastructure"] { --tool-accent: #53657a; }
:root[data-theme="dark"] [data-tool-category="tools-analysis-reporting"] { --tool-accent: #bda3df; }
:root[data-theme="dark"] [data-tool-category="tools-data-development"] { --tool-accent: #88bfd2; }
:root[data-theme="dark"] [data-tool-category="tools-systems-automation"] { --tool-accent: #8fc5a1; }
:root[data-theme="dark"] [data-tool-category="tools-crm-constituent-data"] { --tool-accent: #d6b17b; }
:root[data-theme="dark"] [data-tool-category="tools-ai-assisted-development"] { --tool-accent: #c9a5d0; }
:root[data-theme="dark"] [data-tool-category="tools-personal-infrastructure"] { --tool-accent: #a0b4cc; }
#skills .toolkit-category { min-width: 0; align-self: start; }
#skills .toolkit-category h4 { border-inline-start: 3px solid var(--tool-accent); padding-inline-start: 10px; color: var(--ink); }
#skills .tool-hint { grid-column: 1 / -1; }
#skills .tool-chips { display: flex; flex-wrap: wrap; gap: 8px; }
#skills .tool-chip, #project-entries .project-tool-tag {
  border: 1px solid color-mix(in srgb, var(--tool-accent) 48%, var(--paper));
  border-radius: 999px; background: color-mix(in srgb, var(--tool-accent) 9%, var(--paper));
  color: var(--ink); font: inherit; font-size: 13px; line-height: 1.4;
  padding: 5px 12px; max-width: 100%; overflow-wrap: anywhere;
}
#skills button.tool-chip { min-height: 36px; cursor: pointer; text-align: start; }
#skills button.tool-chip::after { content: ' +'; color: var(--tool-accent); font-weight: 600; }
#skills button.tool-chip[aria-expanded="true"]::after { content: ' −'; }
#skills button.tool-chip:hover, #skills button.tool-chip[aria-expanded="true"] { border-color: var(--tool-accent); background: color-mix(in srgb, var(--tool-accent) 15%, var(--paper)); }
#skills button.tool-chip:focus-visible, #skills .tool-context a:focus-visible { outline: 2px solid var(--tool-accent); outline-offset: 3px; }
#skills .tool-context { margin-block-start: 12px; padding: 14px; border: 1px solid var(--rule); border-inline-start: 3px solid var(--tool-accent); border-radius: 8px; overflow-wrap: anywhere; }
#skills .tool-context[hidden] { display: none; }
#skills .tool-context strong { display: block; color: var(--ink); font-size: 13px; margin-block-end: 6px; }
#skills .tool-context p, #skills .tool-projects { color: var(--ink); font-size: 13px; line-height: 1.65; }
#skills .tool-projects { list-style: none; padding: 0; margin: 10px 0 0; }
#skills .tool-projects li + li { margin-block-start: 8px; }
#skills .tool-context a { text-decoration: underline; text-underline-offset: 3px; }
#project-entries .project-tool-tag { display: inline-block; padding: 3px 9px; margin-block: 3px; font-size: 12px; }
@media (pointer: coarse) { #skills button.tool-chip { min-height: 44px; } }
