

/* Sub-column card grid */
.subcol-grid {display:flex;flex-direction:column;gap:2.5rem;margin-bottom:2.5rem;}
.subcol-section {background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow .2s;}
.subcol-section:hover {box-shadow:0 8px 32px rgba(0,0,0,.08);}
.subcol-header {display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--color-border);}
.subcol-icon {flex-shrink:0;margin-top:2px;}
.subcol-title-group {flex:1;}
.subcol-section-title {font-family:var(--font-heading);font-size:1.125rem;font-weight:700;color:var(--color-text-heading);margin:0 0 .2rem;}
.subcol-section-desc {font-size:.8125rem;color:var(--color-text-light);margin:0;line-height:1.5;}
.btn-view-more {display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .85rem;border:1.5px solid var(--ch-color,#333);border-radius:var(--radius-md);color:var(--ch-color,#333);font-size:.8125rem;font-weight:600;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background .15s,color .15s;}
.btn-view-more:hover {background:var(--ch-color,#333);color:#fff;}
.subcol-featured-link {display:flex;text-decoration:none;color:inherit;}
.subcol-feat-img {flex-shrink:0;width:260px;height:170px;overflow:hidden;}
.subcol-feat-img img {width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.subcol-featured-link:hover .subcol-feat-img img {transform:scale(1.04);}
.subcol-feat-body {flex:1;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.4rem;}
.feat-tag {display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;width:fit-content;}
.subcol-feat-body h3 {font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--color-text-heading);margin:0;line-height:1.4;flex:1;}
.subcol-feat-body p {font-size:.8rem;color:var(--color-text-light);margin:0;line-height:1.5;}
.feat-meta {display:flex;gap:.75rem;font-size:.75rem;color:var(--color-text-light);}
.subcol-mini-cards {display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-border);}
.subcol-mini-card {background:var(--color-bg-card);}
.subcol-mini-link {display:flex;gap:.75rem;padding:1rem 1.25rem;text-decoration:none;color:inherit;transition:background .15s;}
.subcol-mini-link:hover {background:var(--color-bg-hover);}
.subcol-mini-img {flex-shrink:0;width:80px;height:56px;border-radius:var(--radius-sm);overflow:hidden;}
.subcol-mini-img img {width:100%;height:100%;object-fit:cover;}
.subcol-mini-body {flex:1;min-width:0;}
.mini-tag {font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.subcol-mini-body h4 {font-family:var(--font-heading);font-size:.875rem;font-weight:600;color:var(--color-text-heading);margin:.2rem 0 .2rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mini-meta {font-size:.6875rem;color:var(--color-text-light);}

/* Sub-column list page */
.subcol-hero {background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:2.5rem 0 2rem;position:relative;}
.subcol-hero-bg {position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--subcol-color, #333) 6%,transparent),transparent 60%);pointer-events:none;}
.subcol-hero-meta {display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;position:relative;z-index:1;}
.subcol-channel-tag {display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;text-decoration:none;}
.subcol-hero-icon {position:relative;z-index:1;}
.subcol-hero-title {font-family:var(--font-heading);font-size:1.625rem;font-weight:800;color:var(--color-text-heading);margin:0 0 .5rem;line-height:1.2;position:relative;z-index:1;}
.subcol-hero-desc {font-size:.9375rem;color:var(--color-text-light);margin:0 0 1rem;max-width:640px;line-height:1.6;position:relative;z-index:1;}
.subcol-hero-stats {display:flex;gap:1.5rem;position:relative;z-index:1;}
.subcol-stat {font-size:.8125rem;color:var(--color-text-light);}
.subcol-stat strong {color:var(--subcol-color,#333);font-weight:800;font-size:1.125rem;}

/* Archive controls */
.archive-controls {display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;}
.archive-search-wrap {position:relative;flex:1;max-width:360px;}
.archive-search-icon {position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-text-light);pointer-events:none;}
.archive-search-input {width:100%;padding:.55rem .75rem .55rem 2.25rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:.875rem;background:var(--color-bg-card);color:var(--color-text);transition:border-color .15s;}
.archive-search-input:focus {outline:none;border-color:var(--color-primary);}
.results-count {font-size:.8125rem;color:var(--color-text-light);white-space:nowrap;}

/* Article rows */
.subcol-article-list {display:flex;flex-direction:column;gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:2rem;}
.subcol-article-row {display:flex;gap:1.25rem;padding:1.25rem 1.5rem;background:var(--color-bg-card);text-decoration:none;color:inherit;transition:background .15s;}
.subcol-article-row:hover {background:var(--color-bg-hover);}
.subcol-row-img {flex-shrink:0;width:200px;height:120px;border-radius:var(--radius-md);overflow:hidden;}
.subcol-row-img img {width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.subcol-article-row:hover .subcol-row-img img {transform:scale(1.04);}
.subcol-row-content {flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem;}
.subcol-row-tags {display:flex;gap:.4rem;flex-wrap:wrap;}
.subcol-row-tag {display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;}
.subcol-row-title {font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--color-text-heading);margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.subcol-row-excerpt {font-size:.8125rem;color:var(--color-text-light);margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.subcol-row-meta {display:flex;gap:1rem;font-size:.75rem;color:var(--color-text-light);margin-top:auto;flex-wrap:wrap;}
.subcol-row-meta .meta-author {font-weight:600;color:var(--color-text-muted);}

/* Sidebar other sections */
.sidebar-other-sections {list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.2rem;}
.sidebar-other-sections a {display:flex;align-items:center;gap:.5rem;padding:.4rem 0;font-size:.875rem;color:var(--color-text-muted);text-decoration:none;transition:color .15s;}
.sidebar-other-sections a::before {content:'';display:block;width:4px;height:4px;border-radius:50%;background:var(--color-border);flex-shrink:0;}
.sidebar-other-sections a:hover {color:var(--color-text);}

/* Pagination */
.pagination-wrap {display:flex;justify-content:center;padding:1.5rem 0;}
.pagination {display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;justify-content:center;}
.page-btn {display:inline-flex;align-items:center;gap:.25rem;min-width:36px;height:36px;padding:0 .5rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-muted);font-family:var(--font-body);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s;justify-content:center;}
.page-btn:hover:not(:disabled) {border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,white);}
.page-btn.active {background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:700;}
.page-btn:disabled {opacity:.35;cursor:not-allowed;}
.page-ellipsis {display:inline-flex;align-items:center;justify-content:center;width:28px;color:var(--color-text-light);font-size:.875rem;}
