/* AI skills library (/ai-skills/), loaded only there, on top of the data-page kit (en-data.css: table, buttons,
   tags, copy pills, code boxes) and style.css panels (.reports-container / .back / .content-list). Only what is
   specific to the skills pages lives here. Colours: links #0090ff, borders #ddd, panel head #f6f6f6. */
.ais {
  --ais-line: #ddd;
  --ais-soft: #f6f6f6;
  --ais-code-bg: #f9f9f9;
  --ais-muted: #747474;
  --ais-link: #0090ff;
}
.ais h1 { margin: 0 0 2px; }
.ais .back { margin: 0 0 var(--en-s3, 24px); }
.ais-subtitle { font-size: 22px; line-height: 1.4; margin: 0 0 12px; }
.ais-intro { max-width: 1000px; }
.ais-muted { color: var(--ais-muted); font-size: 14px; }
.ais-label { font-weight: bold; margin: 12px 0 4px; }
.ais-skill-title a { font-size: 16px; vertical-align: super; }

/* layout: 9/3 like the report page */
.ais-layout { display: grid; grid-template-columns: minmax(0, 3fr) minmax(240px, 1fr); gap: 32px; align-items: start; }
.ais-side { position: sticky; top: 20px; }   /* floats like the report sidebar */
.ais-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.ais-panel .reports-container__content { padding: 5px 10px 10px; }
.ais-panel .reports-container__content p:last-child { margin-bottom: 0; }
.ais-panel .reports-container__content.content-list { padding: 0; }
.ais-facts { margin: 5px 0 10px; }
.ais-usecases { margin: 0 0 5px; }
.ais-usecases li, .ais-steps li { margin-bottom: 6px; }


.en-table--skills .ais-col-name { width: 24%; }
.en-table--skills .ais-col-cat { width: 16%; }
.en-table--skills .ais-col-dl { width: 90px; white-space: nowrap; }
.ais-skill-id { display: block; font-size: 12px; color: var(--ais-muted); background: none; padding: 0; }
.ais-dl { display: inline-block; width: 26px; height: 30px; line-height: 30px; text-align: center; border-radius: 3px; color: #fff; font-size: 15px; margin-right: 3px; }
.ais-dl:hover, .ais-dl:focus { color: #fff; filter: brightness(1.15); }
.ais-dl--zip { background: #168b24; }
.ais-dl--md { background: #2f6edb; }
[data-ais-library] [hidden] { display: none !important; }

/* install tabs */
.ais-tabs__list { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--ais-line); margin: 5px 0 10px; }
.ais-tabs__list button { padding: 6px 12px; border: 1px solid transparent; border-bottom: 0; border-radius: 6px 6px 0 0; background: none; font-size: 14px; cursor: pointer; color: var(--ais-link); margin-bottom: -1px; }
.ais-tabs__list button[aria-selected=true] { border-color: var(--ais-line); background: #fff; color: #333; font-weight: bold; border-bottom: 1px solid #fff; }
.ais-tabs__single { font-weight: bold; margin: 5px 0; }

/* skill text: the report SQL box */
.ais-text { position: relative; margin: 10px 0; padding: 40px 14px 10px; background: #fff; border: 1px solid var(--ais-line); border-radius: 6px; }
.ais-copy-pill { position: absolute; top: 9px; right: 12px; z-index: 2; }
.ais-prose { line-height: 1.7; overflow-wrap: break-word; }
.ais-prose > :first-child { margin-top: 0; }
.ais-prose h3 { font-size: 20px; margin: 24px 0 8px; }
.ais-prose h4 { font-size: 17px; margin: 18px 0 6px; }
.ais-prose h5, .ais-prose h6 { font-size: 15px; margin: 14px 0 6px; }
.ais-prose pre { background: #fff; border: 1px solid var(--ais-line); border-radius: 6px; padding: 10px; overflow-x: auto; font-size: 13px; line-height: 1.5; }
.ais-prose pre code { background: none; padding: 0; white-space: pre; overflow-wrap: normal; }
.ais-prose code { background: #eee; padding: 1px 4px; border-radius: 3px; font-size: .9em; }
.ais-prose p code, .ais-prose li code, .ais-prose td code { overflow-wrap: anywhere; }
.ais-prose blockquote { margin: 10px 0; padding: 6px 12px; border-left: 4px solid #e10707; background: #fff; }
.ais-table { overflow-x: auto; margin: 10px 0; }
.ais-prose table { border-collapse: collapse; font-size: 14px; background: #fff; }
.ais-prose th, .ais-prose td { border: 1px solid var(--ais-line); padding: 5px 8px; vertical-align: top; text-align: left; min-width: 90px; }
.ais-prose th { background: var(--ais-soft); }

.ais-faq { margin-top: 30px; max-width: 1000px; }
.ais-faq h3 { font-size: 17px; margin: 16px 0 4px; }

@media (max-width: 900px) {
  .ais-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .ais-side { position: static; }
  .ais-subtitle { font-size: 18px; }
}
@media print {
  .ais-search, .en-copy, .ais-side, .ais-tabs__list, .ais-col-dl { display: none !important; }
  .ais-tabs__panel[hidden] { display: block !important; }
  .ais-layout { display: block; }
}

/* audience groups in the skills table, labelled downloads, collapsible AI instructions (2026-10-15) */
.ais-group-row th { padding: 22px 0 8px; font-size: 18px; font-weight: 700; text-align: left; border-bottom: 2px solid var(--ais-line); background: #fff; }
.ais-group-row th span { font-size: 13px; font-weight: 400; color: var(--ais-muted); margin-left: 6px; }
.ais-dl-link { white-space: nowrap; font-size: 14px; }
.ais .ais-entry-actions { justify-content: flex-start; padding: 4px 0 0; margin-top: auto; margin-bottom: 0; } /* beats .post-content p */
/* hub entry panels: equal height, button rows aligned at the bottom */
.ais-columns > .reports-container { display: flex; flex-direction: column; }
.ais-columns > .reports-container > .reports-container__content { flex: 1; display: flex; flex-direction: column; }
.ais-instructions .ais-text { background: #fff; margin-top: 0; }   /* skill text always shown, on white */
.ais-entry-intro { min-height: 4.8em; }                              /* hub: both panels' commands start at the same height */
@media (max-width: 900px) { .ais-entry-intro { min-height: 0; } }
.en-facts .ais-skill-id { display: inline; margin-left: 6px; }

.ais-tags { display: block; margin-top: 4px; }
.ais-tags .en-tag:first-child { margin-left: 0; }
.ais-side .en-files { flex-direction: column; align-items: flex-start; gap: 10px; }
.en-table--skills .ais-col-dl { white-space: nowrap; }

/* repository contents beyond the catalog: commands, scripts, templates, skill files (2026-10-15) */
.ais-tools { margin-top: 24px; scroll-margin-top: 20px; }
.ais-tools h2.reports-container__title { margin: 0; font-size: inherit; }
.ais-tools .en-table td { vertical-align: top; }
.ais-tools tr:target td { background: #fffbe6; }
.ais-more { margin-top: 4px; }
.ais-more > summary { cursor: pointer; color: var(--ais-link); font-size: 14px; }
.ais-more[open] > summary { margin-bottom: 6px; }
.ais-more .ais-prose { padding: 8px 12px; border: 1px solid var(--ais-line); border-radius: 6px; background: #fff; font-size: 15px; }
.ais-usage { margin: 0; padding: 8px 10px; max-height: 24em; overflow: auto; background: #fff; border: 1px solid var(--ais-line); border-radius: 6px; font-size: 13px; line-height: 1.5; white-space: pre; }
.ais-contents { margin: 0 0 8px; padding-left: 18px; }
.ais-keywords { display: flex; flex-wrap: wrap; gap: 4px; }
.ais-keywords .en-tag { margin-left: 0; color: var(--ais-muted); border-color: var(--ais-line); background: var(--ais-soft); }
.ais-side-commands code { background: none; padding: 0; font-size: 12px; display: block; color: var(--ais-muted); }
.ais-side-files .en-file-icon { vertical-align: -3px; margin: 0 4px 0 0; }
.ais-side-files a { overflow-wrap: anywhere; }
#skills { scroll-margin-top: 20px; }
