.cgth-home .cgth-category-group summary{font-size:13px;color:#807788;margin:0 0 14px;list-style:none;cursor:default}
.cgth-home .cgth-category-group summary::-webkit-details-marker{display:none}
.cgth-home .cgth-library-main{padding-top:48px;padding-bottom:64px;min-height:65vh}
.cgth-home .cgth-library-heading{margin-bottom:28px}
.cgth-home .cgth-library-heading h1{font-size:36px;font-weight:600;line-height:1.3;margin:8px 0 12px;color:var(--cgth-ink)}
.cgth-home .cgth-library-heading p{color:#827b88;font-size:14px;line-height:1.8}
.cgth-home .cgth-asset-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 36px}
.cgth-home .cgth-asset-filter{display:flex;align-items:center;gap:12px;padding:18px 20px;border:1px solid #e9e5ed;border-radius:9px;background:#fff;color:#5e5666}
.cgth-home .cgth-asset-filter:hover,.cgth-home .cgth-asset-filter[aria-current=page]{border-color:#a79aaf;background:#f5f2f7;color:#62516f}
.cgth-home .cgth-asset-filter .cgth-category-mark{display:flex;align-items:center;justify-content:center;color:#81718d}
.cgth-home .cgth-asset-filter svg{width:23px;height:23px}
.cgth-home .cgth-asset-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:24px;border-bottom:1px solid #eeeaf0;padding-bottom:16px}
.cgth-home .cgth-asset-toolbar h1{font-size:23px;font-weight:600;margin:0}
.cgth-home .cgth-asset-toolbar p{color:#8a8291;font-size:12px;margin:0}
.cgth-home .cgth-asset-empty{text-align:center;padding:70px 20px;border:1px dashed #ded7e4;border-radius:12px;background:#fcfbfd}
.cgth-home .cgth-asset-empty>svg{width:34px;height:34px;color:#a195ab;margin-bottom:12px}
.cgth-home .cgth-asset-empty h3{font-size:19px;margin:0 0 12px}
.cgth-home .cgth-asset-empty p{color:#8a8291;margin-bottom:22px;line-height:1.8}
.cgth-home .cgth-library-footer{padding:28px 0;border-top:1px solid #eeeaf0;color:#8a8291;font-size:12px}
.cgth-asset-page .cgth-demo-notice{font-size:12px;color:#8a8291;line-height:1.8;margin:-8px 0 22px}
.cgth-asset-page .cgth-demo-grid .cgth-card-body{padding:14px 15px}
.cgth-asset-page .cgth-demo-grid .cgth-card-body h3{min-height:0;margin-bottom:8px}
.cgth-asset-page .cgth-demo-grid .cgth-card-category{margin-bottom:14px}
@media(min-width:1101px){.cgth-home .cgth-category-groups{grid-template-columns:repeat(6,minmax(0,1fr))}}
.cgth-asset-page .cgth-site-nav{position:sticky;top:var(--cgth-admin-offset,0px);z-index:100;background:#fff}
.cgth-asset-page .cgth-library-main{padding-top:20px}
.cgth-asset-page .cgth-asset-layout{display:block}
.cgth-asset-page .cgth-asset-topbar{position:sticky;top:calc(var(--cgth-admin-offset,0px) + var(--cgth-asset-header,118px));z-index:30;border:1px solid #e9e7ed;border-radius:10px;padding:10px;background:#fff;margin-bottom:34px}
.cgth-asset-page .cgth-asset-filters{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:0;margin:0}
.cgth-asset-page .cgth-asset-filter{padding:10px 4px;min-height:64px;border:0;border-right:1px solid #eeebf1;border-radius:0;gap:7px;font-size:13px;flex-direction:column;justify-content:center;white-space:nowrap}
.cgth-asset-page .cgth-asset-filter:last-child{border-right:0}
.cgth-asset-page .cgth-asset-filter[aria-current=page]{background:#f4f1f7;border-radius:6px;color:#62516f}
.cgth-asset-page.cgth-asset-scrolled .cgth-asset-topbar{padding:4px 8px;border-radius:0 0 8px 8px;box-shadow:0 3px 10px #34313a06}
.cgth-asset-page.cgth-asset-scrolled .cgth-asset-topbar .cgth-asset-filter{min-height:44px;flex-direction:row;font-size:12px;gap:6px;padding:8px 3px}
.cgth-asset-page .cgth-asset-filter svg{width:20px;height:20px;color:#81718d}
.cgth-asset-page .cgth-asset-filter .cgth-category-mark{background:transparent;width:20px;height:20px}
.cgth-asset-page .cgth-asset-results{min-width:0;scroll-margin-top:calc(var(--cgth-asset-header,118px) + var(--cgth-admin-offset,0px) + 90px)}
.cgth-asset-page .cgth-asset-results>.cgth-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cgth-asset-page .cgth-asset-toolbar{min-height:44px}
.cgth-asset-page .cgth-asset-category-button{display:none}
.cgth-asset-page .cgth-category-dialog{padding:22px;border:1px solid #e9e7ed;background:#fff;color:#34313a;border-radius:18px 18px 0 0;max-height:80dvh;overflow:auto;width:100%;max-width:520px;margin:auto auto 0;box-sizing:border-box;padding-bottom:calc(22px + env(safe-area-inset-bottom))}
.cgth-asset-page .cgth-category-dialog::backdrop{background:rgba(35,29,42,.38)}
.cgth-asset-page .cgth-dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.cgth-asset-page .cgth-dialog-heading h2{font-size:18px;margin:0}
.cgth-asset-page .cgth-dialog-close{border:0;background:none;color:#81718d;width:44px;height:44px;cursor:pointer}
.cgth-asset-page .cgth-category-dialog .cgth-asset-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.cgth-asset-page .cgth-category-dialog .cgth-asset-filter{border:1px solid #e9e7ed;min-height:52px;flex-direction:row;justify-content:flex-start;padding:12px 10px;border-radius:8px}
.cgth-asset-page .cgth-category-dialog .cgth-asset-all{grid-column:1/-1}
.cgth-asset-page :is(.cgth-asset-filter,.cgth-asset-category-button,.cgth-dialog-close):focus-visible{outline:2px solid #81718d;outline-offset:3px}
@media(max-width:1023px){
 .cgth-asset-page .cgth-asset-layout{display:block}
 .cgth-asset-page .cgth-asset-topbar{position:static;margin-bottom:20px}
 .cgth-asset-page .cgth-asset-topbar .cgth-asset-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cgth-asset-page.cgth-asset-enhanced .cgth-asset-topbar{display:none}
 .cgth-asset-page .cgth-asset-results>.cgth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cgth-asset-page .cgth-asset-toolbar{position:sticky;top:calc(var(--cgth-asset-header,113px) + var(--cgth-admin-offset,0px));z-index:20;background:#fff;padding:10px 0;margin-bottom:16px;gap:8px}
 .cgth-asset-page .cgth-asset-toolbar h1{font-size:18px;flex:1}
 .cgth-asset-page .cgth-asset-toolbar p{width:100%;order:3;font-size:11px}
 .cgth-asset-page.cgth-asset-enhanced .cgth-asset-category-button{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 13px;border:1px solid #ded7e4;border-radius:7px;background:#f8f6fa;color:#706278;font-size:13px}
}
@media(max-width:767px){
 .cgth-home .cgth-category-groups{grid-template-columns:1fr;gap:0}
 .cgth-home .cgth-category-group{border-bottom:1px solid #e9e5ed;padding:12px 0}
 .cgth-home .cgth-category-group summary{cursor:pointer;margin:0;display:flex;justify-content:space-between;color:#62596b;font-size:14px}
 .cgth-home .cgth-category-group summary::after{content:'＋'}
 .cgth-home .cgth-category-group[open] summary::after{content:'−'}
 .cgth-home .cgth-category-group ul{margin-top:16px}
 .cgth-home .cgth-library-main{padding-top:26px}
 .cgth-home .cgth-library-heading h1{font-size:29px}
 .cgth-home .cgth-asset-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:26px}
 .cgth-home .cgth-asset-filter{padding:15px 10px;gap:9px;font-size:13px}
 .cgth-home .cgth-asset-toolbar{flex-wrap:wrap}
 .cgth-home .cgth-asset-empty{padding:42px 15px}
}

/* Shared catalogue controls: keep the existing CGTuto ink/mist/plum palette. */
.cgth-home .cgth-stream-controls{display:flex;flex-direction:column;align-items:center;gap:12px;padding:30px 12px 20px;text-align:center;min-height:116px}
.cgth-home .cgth-stream-status{font-size:13px;line-height:1.7;color:var(--cgth-muted,#85818c);margin:0}
.cgth-home .cgth-stream-more{min-height:44px;min-width:136px;padding:9px 24px;border:1px solid var(--cgth-line);border-radius:6px;background:#fff;color:var(--cgth-accent);font:inherit;font-size:13px;cursor:pointer}
.cgth-home .cgth-stream-more:hover{background:#f7f6f8;border-color:var(--cgth-accent)}
.cgth-home .cgth-stream-more:disabled{cursor:wait;opacity:.65}
.cgth-home .cgth-stream-more:focus-visible,.cgth-home .cgth-stream-fallback:focus-visible{outline:2px solid var(--cgth-accent);outline-offset:4px}
.cgth-home .cgth-stream-fallback,.cgth-home .cgth-stream-start{font-size:12px;color:var(--cgth-accent);text-decoration:underline;text-underline-offset:3px;padding:6px}
.cgth-home .cgth-stream-controls[hidden],.cgth-home .cgth-stream-controls [hidden],.cgth-home .cgth-pagination[hidden]{display:none}
.cgth-home .cgth-stream-controls[data-state=loading] .cgth-stream-status::before{content:'';display:inline-block;width:12px;height:12px;border:1.5px solid var(--cgth-line);border-top-color:var(--cgth-accent);border-radius:50%;margin-right:8px;vertical-align:-1px;animation:cgth-stream-spin .8s linear infinite}
@keyframes cgth-stream-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.cgth-home .cgth-stream-controls[data-state=loading] .cgth-stream-status::before{animation:none}}
.cgth-catalog-page .cgth-site-nav{position:sticky;top:var(--cgth-admin-offset,0px);z-index:100;background:#fff}
.cgth-catalog-page .cgth-catalog-sticky{position:sticky;top:calc(var(--cgth-admin-offset,0px) + var(--cgth-asset-header,118px));z-index:30;background:#fff;border:1px solid var(--cgth-line);border-radius:10px;padding:10px 14px;margin-bottom:22px}
.cgth-home .cgth-access-filters{display:flex;align-items:center;gap:6px;margin:0;flex-wrap:wrap}
.cgth-home .cgth-access-filters>a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 18px;color:#807788;font-size:13px;border-radius:6px}
.cgth-home .cgth-access-filters>a svg{width:18px;height:18px}
.cgth-home .cgth-access-filters>a:hover{background:#f7f6f8;color:var(--cgth-accent)}
.cgth-home .cgth-access-filters>a[aria-current=page]{background:#f3f1f6;color:var(--cgth-accent);font-weight:600}
.cgth-home .cgth-catalog-note,.cgth-home .cgth-catalog-count{font-size:12px;color:#85818c;line-height:1.8;margin:0 0 18px}
.cgth-catalog-page :is(#cgth-course-results,#cgth-benefit-results,#cgth-asset-results){scroll-margin-top:calc(var(--cgth-asset-header,118px) + var(--cgth-admin-offset,0px) + var(--cgth-filter-height,120px) + 18px)}
.cgth-benefits-page .cgth-library-main{padding-top:32px}
.cgth-benefit-heading{margin-bottom:24px}
.cgth-benefit-heading h1{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:600;margin:0 0 10px}
.cgth-benefit-heading h1 svg{width:27px;height:27px;color:var(--cgth-accent)}
.cgth-benefit-heading p{font-size:13px;color:#85818c;margin:0}
.cgth-home .cgth-benefit-controls{padding:0 18px 10px}
.cgth-home .cgth-content-switch{display:flex;gap:28px;border-bottom:1px solid var(--cgth-line);margin-bottom:10px}
.cgth-home .cgth-content-switch>a{position:relative;display:flex;align-items:center;gap:8px;padding:18px 6px;color:#85818c;font-size:15px;font-weight:600}
.cgth-home .cgth-content-switch>a svg{width:19px;height:19px}
.cgth-home .cgth-content-switch>a[aria-current=page]{color:var(--cgth-accent)}
.cgth-home .cgth-content-switch>a[aria-current=page]::after{content:'';height:2px;background:var(--cgth-accent);position:absolute;bottom:-1px;left:6px;right:6px}
.cgth-benefit-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:26px 0 10px}
.cgth-benefit-results-heading h2{font-size:18px;font-weight:600;margin:0}
.cgth-benefit-results-heading .cgth-catalog-count{margin:0}
.cgth-benefits-page .cgth-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cgth-asset-page #cgth-asset-filter-panel>.cgth-access-filters{border-top:1px solid #eeebf1;margin-top:8px;padding-top:8px}
.cgth-asset-page.cgth-asset-scrolled #cgth-desktop-categories .cgth-access-filters{margin-top:4px;padding-top:4px}
.cgth-asset-page .cgth-category-dialog .cgth-access-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cgth-asset-page .cgth-category-dialog .cgth-access-filters>a{border:1px solid var(--cgth-line);padding:10px 6px}
@media(max-width:1023px){
 .cgth-benefits-page .cgth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cgth-home .cgth-access-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
 .cgth-home .cgth-access-filters>a{padding:9px 5px;gap:5px;font-size:12px;white-space:nowrap}
 .cgth-home .cgth-access-filters>a svg{width:15px;height:15px;flex-shrink:0}
 .cgth-home .cgth-content-switch>a{padding:14px 6px}
 .cgth-home .cgth-benefit-controls{padding:0 10px 8px}
 .cgth-home .cgth-catalog-sticky:not(.cgth-benefit-controls){padding:6px}
 .cgth-benefit-results-heading{align-items:flex-start;flex-direction:column;gap:6px}
 .cgth-asset-page .cgth-asset-toolbar{flex-wrap:wrap}
}
@media(max-width:360px){
 .cgth-home .cgth-access-filters>a{gap:3px;padding-inline:2px;font-size:11px}
 .cgth-home .cgth-access-filters>a svg{width:13px;height:13px}
}
