/* Opt-in category presentation, shared by the component catalog and preview. */
.w2wt-category-banner{position:relative;isolation:isolate;background:var(--w2wt-dark);color:var(--w2wt-white)}
.w2wt-category-banner>.w2wt-media{position:absolute;inset:0;z-index:-2;aspect-ratio:auto}
.w2wt-category-banner:after{content:"";position:absolute;inset:0;z-index:-1;background:var(--w2wt-category-scrim)}
.w2wt-category-banner-copy{min-height:var(--w2wt-category-banner-height);padding-block:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.w2wt-category-banner nav{font-size:13px;margin-bottom:20px}.w2wt-category-banner nav a{color:inherit}
.w2wt-category-banner h1{font:800 var(--w2wt-hero-title-size)/1.08 var(--w2wt-hero-font);text-transform:uppercase;overflow-wrap:anywhere;margin:0 0 12px}
.w2wt-category-banner-copy>p{max-width:58ch;margin:0 0 16px}.w2wt-category-banner .w2wt-label{margin-bottom:12px}
.w2wt-category-count{border-left:3px solid var(--w2wt-orange);padding-left:12px;font-size:13px}.w2wt-category-count strong{font-size:20px;margin-right:6px}
.w2wt-category-tabs{display:flex;gap:8px;overflow-x:auto;background:var(--w2wt-muted);padding:4px;margin-block:16px 24px;border-radius:var(--w2wt-button-radius);scrollbar-width:thin}
.w2wt-category-tabs a{flex:none;display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 20px;color:var(--w2wt-text);font-size:13px;font-weight:700;border-radius:var(--w2wt-button-radius);text-decoration:none}
.w2wt-category-tabs a[aria-current]{background:var(--w2wt-orange)}.w2wt-category-tabs a:hover{background:var(--w2wt-border)}.w2wt-category-tabs a[aria-current]:hover{background:var(--w2wt-orange)}
.w2wt-category-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--w2wt-category-gap);padding-bottom:40px}
.w2wt-category-main,.w2wt-category-aside{min-width:0}
.w2wt-category-featured{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px}
.w2wt-category-support{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}
.w2wt-category-lead .w2wt-media{aspect-ratio:4/3}.w2wt-category-lead .w2wt-card--featured h3{font:700 25px/1.2 var(--w2wt-font-body,Roboto,sans-serif)}
.w2wt-category-support h3{font-size:16px}.w2wt-category-support .w2wt-meta{font-size:11px}
.w2wt-category-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.w2wt-category-toolbar .w2wt-section-heading{margin:0}.w2wt-category-order{font-size:13px;flex:none;color:var(--w2wt-secondary)}
.w2wt-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px}
.w2wt-category-grid h3{font-size:var(--w2wt-category-card-title);line-height:1.3;overflow-wrap:anywhere}.w2wt-category-grid .w2wt-meta{font-size:11px}
.w2wt-category-grid .w2wt-excerpt{display:none}
.w2wt-category-ranking{background:var(--w2wt-muted);padding:20px;margin-bottom:24px}
.w2wt-category-ranking .w2wt-section-heading h2{font-size:24px}
.w2wt-category-ranking-item{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;margin-top:16px}.w2wt-category-ranking-item>span{color:var(--w2wt-orange);font:700 italic 28px/1 var(--w2wt-section-font)}
.w2wt-category-ranking .w2wt-card--compact{grid-template-columns:52px minmax(0,1fr);gap:10px}.w2wt-category-ranking h3{font-size:13px}.w2wt-category-ranking .w2wt-meta{font-size:11px}
.w2wt-category-aside .ds-newsletter{padding:20px;background:var(--w2wt-dark);color:white;margin-block:24px}.w2wt-category-aside h2{font:700 24px/1.15 var(--w2wt-section-font)}
.w2wt-category-aside .ds-community{margin-top:24px;min-height:260px}.w2wt-category-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:32px}.w2wt-category-pagination a,.w2wt-category-pagination span{min-width:44px;min-height:44px;display:grid;place-items:center;border:1px solid var(--w2wt-border);border-radius:var(--w2wt-button-radius);color:var(--w2wt-text);text-decoration:none}.w2wt-category-pagination [aria-current]{background:var(--w2wt-orange);border-color:var(--w2wt-orange)}
@media(min-width:768px){.w2wt-category-mobile-support{display:none}}
@media(max-width:1023px){.w2wt-category-layout{grid-template-columns:minmax(0,1fr)}.w2wt-category-ranking{display:none}.w2wt-category-aside{display:grid;grid-template-columns:1fr 1fr;gap:24px}.w2wt-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.w2wt-category-featured{grid-template-columns:1fr;margin-bottom:24px}.w2wt-category-support{display:none}.w2wt-category-grid{grid-template-columns:1fr;gap:16px}.w2wt-category-grid .w2wt-card{display:grid;grid-template-columns:var(--w2wt-category-mobile-thumb) minmax(0,1fr);gap:12px}.w2wt-category-grid .w2wt-card-copy{padding:0}.w2wt-category-grid .w2wt-media{aspect-ratio:4/3}.w2wt-category-aside{display:block}.w2wt-category-toolbar{align-items:flex-start}.w2wt-category-toolbar h2{font-size:24px}.w2wt-category-order{font-size:12px}.w2wt-category-banner h1{font-size:var(--w2wt-hero-title-size)}.w2wt-category-tabs a{padding-inline:16px}.w2wt-category-banner nav{margin-bottom:16px}}
/* Compact sidebar: full titles stay in the DOM; only listing presentation clamps. */
.w2wt-category-ranking .w2wt-card h3{font-size:13px;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.w2wt-ds .w2wt-category-aside .ds-newsletter form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.w2wt-ds .w2wt-category-aside .ds-newsletter button{justify-content:center;min-height:44px}
.w2wt-ds .w2wt-category-aside .ds-community{padding:20px;min-height:260px}
.w2wt-ds .w2wt-category-aside .ds-community h2{font-size:28px}
.w2wt-category-aside .ds-kicker{color:var(--w2wt-orange)}

/* Native Category: no dummy sidebar when no editorial provider is configured. */
.w2wt-category-layout-solo{grid-template-columns:minmax(0,1fr)}
.w2wt-category-live .w2wt-category-layout{padding-top:24px}
.w2wt-category-live .w2wt-category-tabs+.w2wt-category-layout{padding-top:0}

/* Category covers are explicit: no article-image or thumbnail-placeholder fallback. */
.w2wt-category-banner,.w2wt-category-banner>.w2wt-media{background:#000}
.w2wt-category-banner>.w2wt-media>.w2wt-image-fallback{display:none}
