/* v0.32.1 Danh mục → Quản lý liên kết: toolbar, shared column header, compact rows, cards on narrow screens */
.sl-v2 .sl-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:14px}
.sl-v2 .sl-search{position:relative;display:flex;flex:1 1 320px;align-items:center;margin:0}
.sl-v2 .sl-search .solid-icon{position:absolute;left:12px;width:16px;height:16px;color:#98a2b3;pointer-events:none}
.sl-v2 .sl-search input{width:100%;margin:0;padding-left:36px}
.sl-filters{display:flex;flex-wrap:wrap;gap:6px}
.sl-filter{display:inline-flex;align-items:center;gap:8px;min-height:0;margin:0;padding:6px 12px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer}
.sl-filter b{min-width:20px;padding:0 6px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:12px;text-align:center}
.sl-filter:hover{border-color:var(--brand,#0964fe);color:var(--brand,#0964fe)}
.sl-filter.on,.sl-filter.on:hover{border-color:var(--brand,#0964fe);background:var(--brand,#0964fe);color:#fff}
.sl-filter.on b{background:#ffffff33;color:#fff}
.sl-filter.warn:not(.on) b{background:#fef0c7;color:#b54708}
.sl-sticky{position:sticky;top:64px;z-index:6;background:#fff}
.sl-v2 .sl-bulk{position:static;margin:0 0 8px}
.sl-head-wrap{border-bottom:1px solid #eaecf0}
.sl-v2 .sl-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.sl-v2 .sl-table col.c-check{width:40px}
.sl-v2 .sl-table col.c-mode{width:158px}
.sl-v2 .sl-table col.c-subs{width:196px}
.sl-v2 .sl-table col.c-state{width:104px}
.sl-v2 .sl-table col.c-exp{width:124px}
.sl-v2 .sl-table col.c-dl{width:108px}
.sl-v2 .sl-table col.c-views{width:78px}
.sl-v2 .sl-table col.c-act{width:236px}
.sl-head th{padding:10px 8px;border:0;background:#fff;color:#667085;font-size:12px;font-weight:600;letter-spacing:.02em;text-align:left;text-transform:uppercase;white-space:nowrap}
.sl-head th.c{text-align:center}
.sl-head th.col-actions{text-align:right}
.sl-ghost th{height:0;padding-top:0!important;padding-bottom:0!important;border:0!important;font-size:0;line-height:0;overflow:hidden}
.sl-v2 .table-wrap{margin:0;border:0;border-radius:0;box-shadow:none}
.sl-v2 .sl-group,.sl-v2 .sl-group+.sl-group{margin-top:14px}
.sl-v2 .sl-group{overflow:hidden;border:1px solid #eaecf0;border-radius:12px}
.sl-group-head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid #eaecf0;background:#f9fafb}
.sl-group.collapsed .sl-group-head{border-bottom:0}
.sl-group.collapsed .table-wrap{display:none}
.sl-all{display:inline-flex;align-items:center;justify-content:center;width:18px;margin:0 6px 0 3px}
.sl-avatar{display:grid;flex:0 0 30px;place-items:center;width:30px;height:30px;border-radius:50%;background:#eaf2ff;color:var(--brand,#0964fe);font-weight:700}
.sl-v2 .sl-group-head h3{min-width:0;margin:0;overflow:hidden;font-size:15px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.sl-v2 .sl-group-head em{padding:1px 8px;border-radius:999px;background:#eef2f6;color:#475467;font-size:12px;font-style:normal;font-weight:600;white-space:nowrap}
.sl-group-views{margin-left:auto;color:#667085;font-size:12px;white-space:nowrap}
.sl-collapse .solid-icon{transition:transform .15s}
.sl-group.collapsed .sl-collapse .solid-icon{transform:rotate(-90deg)}
.sl-v2 .sl-table td{padding:10px 8px;border:0;border-top:1px solid #f2f4f7;vertical-align:middle}
.sl-v2 .sl-table tbody tr:first-child td{border-top:0}
.sl-v2 .sl-table tbody tr:hover td{background:#fcfcfd}
.sl-v2 .sl-table tr.selected td{background:#f5f8ff}
.sl-v2 .sl-table tr.is-off .sl-name strong,.sl-v2 .sl-table tr.is-off .sl-mode{color:#667085}
.sl-lib{min-width:0}
.sl-v2 .sl-name{max-width:100%}
.sl-v2 .sl-name strong{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-decoration:none}
.sl-v2 .sl-name:hover strong{text-decoration:underline}
.sl-sub{margin-top:2px;overflow:hidden;color:#667085;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.sl-gone{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:6px;background:#f2f4f7;color:#667085;font-size:13px;font-style:italic}
.sl-gone .solid-icon{width:14px;height:14px}
.sl-mode{display:inline-flex;align-items:center;gap:6px;font-weight:600;white-space:nowrap}
.sl-mode .solid-icon{flex:0 0 15px;width:15px;height:15px;color:#475467}
.sl-subs{display:flex;flex-wrap:wrap;gap:4px}
.sl-v2 .share-badge{display:inline-block;white-space:nowrap}
.sl-exp{font-weight:600;white-space:nowrap}
.sl-soon .sl-exp{color:#b54708}
.sl-dl{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.sl-dl .solid-icon{width:13px;height:13px}
.sl-dl.ok{background:#ecfdf3;color:#067647}
.sl-dl.no{background:#fef3f2;color:#b42318}
.sl-v2 .sl-views b{font-size:15px}
.sl-actions{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:4px}
.sl-actions .icon-btn{flex:0 0 auto}
.sl-sep{flex:0 0 1px;width:1px;height:22px;margin:0 4px;background:#e4e7ec}
.sl-empty{display:grid;justify-items:center;gap:6px;padding:40px 16px;color:#667085;text-align:center}
.sl-empty .solid-icon{width:28px;height:28px;opacity:.5}
.sl-empty strong{color:#344054;font-size:15px}
@media (max-width:1100px){
 .sl-head-wrap{display:none!important}
 .sl-v2 .sl-table,.sl-v2 .sl-table tbody,.sl-v2 .sl-table td{display:block;width:auto}
 .sl-v2 .sl-table colgroup,.sl-v2 .sl-table thead{display:none}
 .sl-v2 .sl-table tr{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;padding:12px 12px 12px 44px;border-top:1px solid #eaecf0}
 .sl-v2 .sl-table tbody tr:first-child{border-top:0}
 .sl-v2 .sl-table td,.sl-v2 .sl-table tbody tr:first-child td{padding:0;border:0}
 .sl-v2 .sl-table td.qm-check{position:absolute;left:14px;top:14px}
 .sl-v2 .sl-table td.sl-lib,.sl-v2 .sl-table td.col-actions{grid-column:1/-1}
 .sl-v2 .sl-table td[data-label]::before{content:attr(data-label);display:block;margin-bottom:2px;color:#98a2b3;font-size:11px;font-weight:600;text-transform:uppercase}
 .sl-v2 .sl-table td.sl-views{text-align:left}
 .sl-actions{flex-wrap:wrap;justify-content:flex-start}
}

/* Groups keep their positioned children (checkboxes, icon buttons) under the sticky app header and the sticky column header */
.sl-v2 .sl-group{position:relative;z-index:0}

/* Hướng dẫn sử dụng: the table of contents sticks under the app header while reading, the current section is highlighted */
.guide-article,.guide-layout{overflow:visible}
.guide-article .guide-toc{position:sticky;top:72px;z-index:5;box-shadow:0 1px 0 #eaecf0}
.guide-article .guide-toc.stuck{box-shadow:0 8px 20px #1018281a}
.guide-article .guide-toc button.small.on{border-color:var(--brand,#0964fe);background:var(--brand,#0964fe);color:#fff}
.guide-body h2{scroll-margin-top:140px}
@media (max-width:860px){.guide-article .guide-toc{top:64px;flex-wrap:nowrap;overflow-x:auto}}
