/* Video Wall Manager V1.0 FIX4: folder tree + touch-friendly folder cards */
.wall-layout{display:grid;grid-template-columns:minmax(238px,270px) minmax(0,1fr);gap:22px;align-items:start;margin-top:24px}
.wall-content{min-width:0}
.wall-category-panel{align-self:start;position:sticky;top:15px;max-height:calc(100vh - 30px);overflow:auto;background:#f7faf9;border:1px solid #e3ecea;border-radius:16px;padding:15px 11px}
.cat-panel-heading,.mobile-folder-title{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:13px}
.cat-panel-heading strong,.mobile-folder-title h3{font-size:18px;font-weight:800;margin:0}
.cat-panel-heading a,.mobile-folder-title a{font-size:14px;color:#207482;font-weight:750;white-space:nowrap}
.cat-all-link{display:flex;justify-content:space-between;gap:7px;align-items:center;padding:11px 12px;font-size:16px;font-weight:750;border:1px solid #dfe9e7;border-radius:10px;background:#fff;margin-bottom:12px;min-height:46px}
.cat-all-link.is-current,.folder-all-link.is-current{background:#dfefee;color:#135e6e;border-color:#a5cbca}
.cat-hide-label,.mobile-folder-actions label{display:flex;gap:8px;align-items:center;font-size:14px;color:#526b70;padding:8px 2px;margin-bottom:12px;cursor:pointer}
.cat-hide-label input,.mobile-folder-actions input{width:19px;height:19px;min-height:19px;flex-shrink:0}
.cat-nav-tree{display:grid;gap:3px}
.cat-nav-row{display:flex;align-items:stretch;gap:2px;min-width:0;padding-left:calc(var(--folder-depth) * 10px)}
.cat-folder-toggle,.cat-folder-spacer{flex:0 0 28px;display:grid;place-items:center;border:0;background:transparent;color:#55747a;min-height:54px;padding:0;font-size:19px;border-radius:8px}
.cat-folder-toggle[aria-expanded="false"]{transform:rotate(-90deg)}
.cat-folder-toggle:hover{background:#e8f1ee}
.cat-nav-link{flex:1;display:flex;align-items:center;gap:7px;min-width:0;border-radius:10px;padding:8px 7px;border:1px solid transparent}
.cat-nav-link:hover{background:#edf5f3}
.cat-nav-link.is-current{background:#d9ecea;border-color:#8bbbbb;color:#124e60}
.cat-nav-icon{font-size:18px;flex-shrink:0}
.cat-nav-text{display:flex;flex-direction:column;min-width:0;gap:1px}
.cat-nav-text strong{font-size:15px;font-weight:650;overflow-wrap:anywhere;line-height:1.36}
.root-row .cat-nav-text strong{font-weight:800;font-size:16px}
.cat-nav-text small{font-size:11px;color:#6e8486;line-height:1.3;white-space:nowrap}
.cat-nav-count{margin-left:auto;background:#e3eeed;border-radius:999px;min-width:26px;min-height:23px;padding:2px 5px;display:grid;place-items:center;color:#42666a;font-size:12px;font-weight:800;flex-shrink:0}
.cat-panel-hint{color:#708186;font-size:12px;line-height:1.55;margin:15px 4px 1px}
.cat-nav-children[hidden],.folder-tile-children[hidden]{display:none!important}
.cat-nav-group>.cat-nav-children{padding-top:2px}
.category-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;min-height:39px;font-size:15px;color:#657c81;margin:0 0 14px;padding:6px 1px}
.category-breadcrumb a{color:#267482;font-weight:650}
.category-breadcrumb strong{color:#234d5c;overflow-wrap:anywhere}
.hide-empty-categories .zero-category:not(.is-selected-path){display:none!important}
.mobile-folder-panel{display:none}
/* Folder management interface */
.category-admin-layout{grid-template-columns:minmax(0,1.5fr) minmax(275px,.75fr);align-items:start}
.manage-tree{display:flex;flex-direction:column;gap:13px;margin-top:17px}
.manage-node{min-width:0}
.manage-tree>.manage-node{background:#fafdfc;border:1px solid #e0ebea;border-radius:14px;padding:12px 11px}
.manage-node-children{margin-left:21px;padding-left:14px;border-left:2px solid #cde3e0;display:grid;gap:9px;margin-top:12px}
.manage-node-row{display:flex;align-items:flex-start;gap:8px;min-width:0}
.manage-folder-icon{font-size:24px;line-height:1.4;flex-shrink:0}
.manage-node-content{min-width:0;flex:1}
.manage-node-title{font-size:18px;font-weight:780;color:#2b5460;line-height:1.35;overflow-wrap:anywhere}
.manage-node-title small{display:block;font-size:12px;color:#74888b;font-weight:500;margin-top:2px;overflow-wrap:anywhere}
.manage-node-count{font-size:13px;color:#527a7b;margin:7px 0 11px}
.manage-edit-form{display:flex;flex-wrap:wrap;gap:8px;align-items:end}
.manage-edit-form label{flex:1 1 160px;font-size:13px;font-weight:650;line-height:1.5}
.manage-edit-form input,.manage-edit-form select{font-size:15px;min-height:43px;width:100%;margin-top:3px}
.manage-edit-form .btn{flex:0 0 auto}
.manage-delete-form{margin-top:7px;display:flex;justify-content:flex-end}
.manage-delete-form .btn{font-size:14px}
.check-pill .subcategory-choice{border-left:3px solid #a8cfca}
@media(max-width:1280px){
 .wall-layout{gap:15px;grid-template-columns:minmax(216px,245px) minmax(0,1fr)}
 .wall-content .video-grid[data-columns="5"],.wall-content .video-grid[data-columns="6"]{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1120px){
 .wall-layout{display:block;margin-top:18px}
 .wall-category-panel{display:none}
 .mobile-folder-panel{display:block;background:#f8fbfa;border:1px solid #e1eae8;border-radius:15px;padding:15px;margin-bottom:14px}
 .mobile-folder-actions{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:8px}
 .mobile-folder-actions label{margin:0;min-height:44px}
 .folder-all-link{font-size:15px;font-weight:750;padding:9px 13px;border-radius:10px;border:1px solid #d2e4e0;background:white;min-height:44px;display:flex;align-items:center}
 .folder-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 .folder-tile{background:white;border:1px solid #e2e9e8;border-radius:12px;padding:9px;min-width:0}
 .folder-tile-row{display:flex;align-items:stretch;gap:4px;min-width:0}
 .folder-tile-link{display:flex;align-items:center;gap:9px;flex:1;min-width:0;padding:7px 4px;border-radius:9px}
 .folder-tile-link.is-current{background:#e1f1ed;color:#125b69}
 .folder-tile-icon{font-size:26px;flex:0 0 30px}
 .folder-tile-info{display:flex;flex-direction:column;gap:2px;min-width:0}
 .folder-tile-info strong{font-size:16px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}
 .folder-tile-info small{font-size:13px;color:#73858a;line-height:1.35}
 .folder-tile-toggle{border:1px solid #e0e9e8;border-radius:9px;background:#f7fbfa;color:#50747a;min-height:46px;min-width:45px;font-size:20px}
 .folder-tile-toggle[aria-expanded="false"]{transform:rotate(-90deg)}
 .folder-tile-children{display:grid;gap:8px;padding:10px 0 2px 15px;border-left:2px solid #bcdad5;margin:8px 0 0 14px}
 .folder-tile-children .folder-tile{background:#f7faf9}
 .folder-tile-children .folder-tile-link{padding:6px 3px}
 .category-admin-layout{grid-template-columns:1fr}
}
@media(max-width:850px){
 .wall-content .video-grid[data-columns="5"],.wall-content .video-grid[data-columns="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}
 .folder-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .wall-content .video-grid[data-columns],.wall-content .video-grid.short-grid[data-columns]{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mobile-folder-panel{padding:13px 10px}
 .mobile-folder-title h3{font-size:18px}
 .folder-card-grid{grid-template-columns:1fr}
 .folder-tile{padding:7px}
 .folder-tile-icon{font-size:24px}
 .folder-tile-info strong{font-size:17px}
 .folder-tile-info small{font-size:13px}
 .category-breadcrumb{font-size:14px}
 .manage-node-children{margin-left:9px;padding-left:9px}
 .manage-tree>.manage-node{padding:10px 8px}
 .manage-node-title{font-size:17px}
 .manage-edit-form label{flex:1 1 100%}
 .manage-edit-form .btn{width:100%}
 .manage-delete-form .btn{min-height:44px}
}
@media(max-width:360px){.wall-content .video-grid[data-columns],.wall-content .video-grid.short-grid[data-columns]{grid-template-columns:1fr}}
