/* glossary styles */
.article-hero { position:relative; display:flex; align-items:center; min-height:clamp(140px, 21.333vw, 253px); margin:calc(-1 * clamp(1.25rem, 3vw, 2.5rem)) calc(-1 * clamp(1.25rem, 3vw, 2.5rem)) 1.25rem; overflow:hidden; border-radius:calc(var(--radius) - .05rem) calc(var(--radius) - .05rem) 0 0; isolation:isolate; background:#173c68 url('assets/images/glossary/glossary-hero-ai-pc-workflow.webp') center / cover no-repeat; }

.glossary-hero { display:flex; min-height:187px; flex-direction:column; justify-content:center; background:#061b45 url('assets/images/glossary/glossary-hero-ai-pc-workflow.webp') right center / auto 100% no-repeat; color:#fff; }

.glossary-hero .page-title { color:#fff; }

.glossary-hero p { max-width:38rem; margin:.75rem 0 0; color:#e8f3ff; line-height:1.8; }

.glossary-detail-hero { display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr); grid-template-rows:minmax(0, 1fr); width:100%; height:167px; min-height:167px; margin-bottom:1.5rem; padding:0; overflow:hidden; background:#fff; color:var(--ink); }

.glossary-detail-hero.has-glossary-hero-image { background:#fff; }

.glossary-detail-hero.has-no-glossary-hero-image { grid-template-columns:1fr; background:var(--soft); }

.glossary-detail-hero__inner { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:0; min-width:0; min-height:0; padding:1.125rem clamp(1.25rem, 2.5vw, 2rem) 1rem; }

.glossary-detail-hero__inner .page-title { min-width:0; margin:0 0 .15rem; color:var(--ink); font-size:28px; text-wrap:balance; }

.glossary-detail-hero__title.has-formal-name { white-space:nowrap; }

.glossary-detail-hero__title-formal-name { display:inline-block; margin-left:.35rem; font-size:.62em; line-height:1.25; vertical-align:baseline; white-space:nowrap; }

.glossary-detail-hero .glossary-hero-details { max-width:none; margin:0; color:#526275; font-size:14px; line-height:1.45; }

.glossary-hero-taxonomies { display:flex; flex-wrap:wrap; gap:.2rem 1rem; margin:.1rem 0 0; color:#526275; font-size:13px; line-height:1.35; }

.glossary-hero-taxonomies div { display:flex; gap:.35rem; }

.glossary-hero-taxonomies dt { color:var(--ink); font-weight:700; }

.glossary-hero-taxonomies dd { display:flex; flex-wrap:wrap; margin:0; }

.glossary-hero-taxonomies a { color:var(--action); font-weight:700; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px; }

.glossary-hero-taxonomies a:hover, .glossary-hero-taxonomies a:focus-visible { color:var(--action-hover); }

.glossary-detail-hero__media { min-width:0; min-height:0; height:100%; }

.glossary-detail-hero__media img { display:block; width:100%; height:100%; object-fit:cover; object-position:right center; }

.glossary-illustration { margin:0 0 1.75rem; overflow:hidden; border:1px solid var(--line); border-radius:calc(var(--radius) - .15rem); background:var(--soft); }

.glossary-illustration img { display:block; width:100%; height:auto; aspect-ratio:16 / 9; object-fit:cover; }

.glossary-tools { margin:0 0 1.5rem; overflow:hidden; border:1px solid #9eb8c3; border-radius:var(--radius); background:var(--surface); box-shadow:0 8px 22px rgba(6,27,69,.12); }

.glossary-tools > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:4.5rem; padding:.75rem 1rem .75rem 1.25rem; background:var(--action); box-shadow:inset 4px 0 0 #f2b84b; color:#fff; font-weight:700; cursor:pointer; list-style:none; transition:background-color .18s ease, box-shadow .18s ease; }

.glossary-tools > summary::-webkit-details-marker { display:none; }

.glossary-tools__summary-main { display:flex; align-items:center; gap:.85rem; min-width:0; }

.glossary-tools__summary-icon { display:grid; width:2.5rem; height:2.5rem; flex:0 0 2.5rem; place-items:center; border-radius:50%; background:#fff; color:var(--action); }

.glossary-tools__summary-icon svg { width:1.4rem; height:1.4rem; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }

.glossary-tools__summary-copy { display:flex; min-width:0; flex-direction:column; gap:.12rem; }

.glossary-tools__summary-title { font-size:1.05rem; line-height:1.4; }

.glossary-tools__summary-description { color:rgba(255,255,255,.82); font-size:.82rem; font-weight:500; line-height:1.45; }

.glossary-tools__summary-toggle { display:grid; width:2.15rem; height:2.15rem; flex:0 0 2.15rem; place-items:center; border:1px solid rgba(255,255,255,.62); border-radius:50%; background:rgba(255,255,255,.08); }

.glossary-tools__summary-toggle::before { width:.5rem; height:.5rem; border-right:2px solid currentColor; border-bottom:2px solid currentColor; content:''; transform:rotate(45deg) translate(-.1rem,-.1rem); transition:transform .18s ease; }

.glossary-tools[open] > summary { border-bottom:1px solid var(--line); }

.glossary-tools[open] .glossary-tools__summary-toggle::before { transform:rotate(225deg) translate(-.1rem,-.1rem); }

.glossary-tools > summary:hover { background:var(--action-hover); box-shadow:inset 6px 0 0 #f2b84b; color:#fff; }

.glossary-tools > summary:focus-visible { outline:3px solid #e29521; outline-offset:-3px; }

@media (max-width:42rem) {
	.glossary-tools > summary { gap:.7rem; min-height:4.25rem; padding:.7rem .8rem .7rem 1rem; }
	.glossary-tools__summary-main { gap:.7rem; }
	.glossary-tools__summary-icon { width:2.2rem; height:2.2rem; flex-basis:2.2rem; }
	.glossary-tools__summary-title { font-size:1rem; }
	.glossary-tools__summary-description { font-size:.75rem; }
}

.glossary-tools__content { padding:1.25rem; }

.glossary-search label, .glossary-index__label { display:block; margin:0 0 .45rem; color:var(--ink); font-weight:700; }

.glossary-search__controls { display:flex; gap:.6rem; align-items:stretch; }

.glossary-search input { min-width:0; flex:1; padding:.65rem .75rem; border:1px solid #93a1ae; border-radius:.4rem; font:inherit; }

.glossary-search button { padding:.65rem 1rem; border:1px solid var(--brand); border-radius:.4rem; background:var(--brand); color:#fff; font:inherit; font-weight:700; cursor:pointer; }

.glossary-search__clear { display:flex; align-items:center; justify-content:center; padding:.65rem 1rem; border:1px solid #7892b6; border-radius:.4rem; background:#fff; color:#245c9b; font-weight:700; text-decoration:none; }

.glossary-search__clear:hover { background:#eaf3ff; color:#16477d; }

.glossary-search__help, .glossary-result-summary { margin:.65rem 0 0; color:var(--muted); font-size:.9rem; }

.glossary-index { margin-top:1.25rem; }

.glossary-index ul { display:flex; flex-wrap:wrap; gap:.4rem; margin:.25rem 0 1rem; padding:0; list-style:none; }

.glossary-index a, .glossary-index .is-disabled { display:block; min-width:2.2rem; padding:.3rem .5rem; border:1px solid var(--line); border-radius:.35rem; text-align:center; text-decoration:none; }

.glossary-index a { background:#eaf3ff; border-color:#a9c9ec; color:#245c9b; font-size:calc(1rem + 2px); font-weight:700; }

.glossary-index a:hover { background:#dcecff; color:#16477d; }

.glossary-index a.is-current { border-color:var(--brand); background:var(--brand); color:#fff; }

.glossary-index .is-disabled { background:#fff; color:#8bb6e3; font-size:1rem; font-weight:400; cursor:not-allowed; }

.glossary-result-summary { margin:0 0 1.25rem; }

.glossary-filter-heading { margin:0 0 1rem; color:var(--ink); font-size:1.35rem; }

.glossary-list { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }

.glossary-card { overflow:hidden; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:0 8px 26px rgba(23,32,51,.04); transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }

.glossary-card__link { display:block; min-height:100%; padding:1.25rem; color:var(--ink); text-decoration:none; }

.glossary-card:hover, .glossary-card:focus-within { border-color:#9fc5ed; background:#eaf3ff; box-shadow:0 10px 28px rgba(33,86,146,.12); transform:translateY(-2px); }

.glossary-card h2 { margin:0 0 .6rem; font-size:1.25rem; line-height:1.4; }

.glossary-card h2 { color:var(--ink); }

.glossary-card__link:focus-visible { outline:3px solid #245c9b; outline-offset:-3px; }

.glossary-card p:last-child { margin-bottom:0; }

.glossary-card-detail { margin:.25rem 0; color:var(--muted); font-size:.92rem; }

.glossary-card-detail span { font-weight:700; }

.glossary-details { display:flex; flex-wrap:wrap; gap:.75rem 1.5rem; margin:1rem 0 0; color:var(--muted); }

.glossary-details div { display:flex; gap:.5rem; }

.glossary-details dt { font-weight:700; }

.glossary-details dd { margin:0; }

.glossary-auto-link { font-weight:700; text-decoration-thickness:2px; }

.entry-content .glossary-meaning-illustration { max-width:960px; margin:1.25rem auto 2rem; }

.entry-content .glossary-meaning-illustration img { display:block; width:100%; height:auto; border:1px solid var(--line); border-radius:calc(var(--radius) - .2rem); box-shadow:0 8px 26px rgba(23,32,51,.08); }

.entry-content .glossary-meaning-illustration figcaption { margin-top:.65rem; color:var(--muted); font-size:.88rem; text-align:center; }

.entry-content .content-keypoint,
.entry-content .glossary-keypoint { color:#9b4750; font-weight:700; }

.glossary-pagination { display:flex; flex-wrap:wrap; gap:.65rem; align-items:center; margin-top:1.5rem; }

.glossary-back, .glossary-pagination__link, .glossary-back--title { display:inline-flex; align-items:center; min-height:2.75rem; padding:.5rem 1rem; border:1px solid var(--action); border-radius:.4rem; background:var(--action); color:#fff; font-weight:700; text-decoration:none; }

.glossary-back::before, .glossary-back--title::before { content:'←'; margin-right:.45rem; }

.glossary-pagination__link { max-width:100%; }

.glossary-back:hover, .glossary-pagination__link:hover, .glossary-back--title:hover { background:#fff; color:var(--action); }

.glossary-back--hero { flex:0 0 auto; margin-top:.4rem; }

.glossary-list + .navigation.pagination .nav-links { justify-content:center; }
