/* Folder organization and a compact, quiet alternative to the board grid. */
.boards-table .sr-only, #board-folder-dialog .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
#board-folders-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 22px; min-height:32px; }
#board-folders-bar nav, #board-folders-bar > div { display:flex; align-items:center; gap:10px; min-width:0; }
#board-folders-bar > div { margin-left:auto; }
#board-folders-bar nav { color:var(--text-dim); font-size:13px; }
#board-folders-bar nav button { border:0; padding:6px 0; background:none; color:var(--text-mid); font:inherit; cursor:pointer; }
#board-folders-bar .folder-current { color:var(--text); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#board-folders-bar .btn { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
#board-folders-bar svg { width:15px; height:15px; }
.folder-load-error { color:var(--text-dim); font-size:11px; }
.board-folder-card { position:relative; border:1px solid var(--card-border); border-radius:7px; background:var(--card-bg); min-height:170px; }
.folder-card-open { display:flex; flex-direction:column; align-items:flex-start; width:100%; height:100%; min-height:168px; padding:22px; border:0; border-radius:inherit; background:none; color:var(--text); text-align:left; cursor:pointer; font:inherit; }
.folder-card-open > svg { width:35px; height:35px; color:var(--teal); margin-bottom:18px; }
.folder-card-name { font-size:14px; font-weight:600; overflow-wrap:anywhere; padding-right:12px; }
.folder-card-count { color:var(--text-dim); font-size:11px; margin-top:7px; }
.folder-edit { border:0; background:none; color:var(--text-dim); border-radius:5px; width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; font:inherit; font-size:20px; flex-shrink:0; }
.board-folder-card > .folder-edit { position:absolute; top:9px; right:9px; }
.folder-edit:hover { background:var(--card-bg-hover); color:var(--text); }
.board-folder-card:hover { border-color:var(--card-border-hover); }
#all-boards.boards-list { display:block; }
.boards-table { width:100%; border-collapse:separate; border-spacing:0 2px; table-layout:fixed; color:var(--text); font-size:13px; }
.boards-table th { text-align:left; color:var(--text-dim); font-size:11px; font-weight:400; padding:0 12px 12px; }
.boards-table th button { color:inherit; background:none; border:0; padding:0; font:inherit; cursor:pointer; min-height:28px; }
.boards-table .list-col-name { width:auto; }
.boards-table .list-col-type { width:18%; }
.boards-table .list-col-count { width:16%; }
.boards-table .list-col-updated { width:16%; }
.boards-table th:last-child { width:44px; padding:0; }
.boards-table td { height:44px; padding:0 12px; color:var(--text-mid); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; cursor:pointer; }
.boards-table tbody tr:nth-child(even) td { background:rgba(128,128,128,.085); }
.boards-table tbody tr:hover td, .boards-table tbody tr:focus-within td { background:rgba(128,128,128,.16); }
.boards-table td:first-child { border-radius:6px 0 0 6px; }
.boards-table td:last-child { border-radius:0 6px 6px 0; padding:0 6px; }
.board-list-open { display:flex; align-items:center; gap:11px; width:100%; min-height:44px; padding:0; border:0; background:none; color:var(--text); font:inherit; text-align:left; cursor:pointer; }
.board-list-open > span:first-of-type { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.board-list-open > svg { flex-shrink:0; width:19px; height:19px; color:var(--text-dim); }
tr[data-kind="folder"] .board-list-open > svg { color:var(--teal); }
.list-pin { font-size:8px; color:var(--teal); }
.boards-list-footer { display:flex; justify-content:space-between; gap:12px; padding:20px 0; }
.folder-empty { padding:32px 12px !important; color:var(--text-dim); font-size:12px; }
#board-folder-dialog { width:min(500px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); padding:25px; margin:auto; overflow:auto; color:var(--text); background:var(--panel-bg, #202124); border:1px solid var(--card-border); border-radius:12px; box-shadow:0 24px 70px rgba(0,0,0,.4); font:inherit; }
[data-theme="light"] #board-folder-dialog { background:#faf9f6; }
#board-folder-dialog::backdrop { background:rgba(0,0,0,.5); }
.folder-dialog-heading { display:flex; align-items:center; gap:10px; margin-bottom:24px; }
.folder-dialog-heading > svg { width:23px; height:23px; color:var(--teal); }
.folder-dialog-heading h2 { margin:0; font-size:17px; font-weight:600; }
.folder-close { margin-left:auto; background:none; border:0; color:var(--text-dim); font:inherit; font-size:24px; cursor:pointer; }
.folder-name-label { display:block; color:var(--text-mid); font-size:12px; margin-bottom:9px; }
.folder-hint { color:var(--text-dim); font-size:12px; line-height:1.6; margin:12px 0 20px; }
.folder-picker { border:0; padding:0; margin:18px 0 0; max-height:270px; overflow:auto; }
.folder-picker legend { color:var(--text-dim); font-size:11px; padding:0 0 10px; }
.folder-pick-row { display:flex; align-items:center; gap:12px; padding:10px 8px; border-radius:5px; cursor:pointer; }
.folder-pick-row[hidden] { display:none; }
.folder-pick-row:hover { background:rgba(128,128,128,.09); }
.folder-pick-row input { accent-color:var(--teal); flex-shrink:0; }
.folder-pick-row span { min-width:0; }
.folder-pick-row strong { display:block; font-size:13px; font-weight:400; overflow-wrap:anywhere; }
.folder-pick-row small { display:block; margin-top:3px; font-size:11px; color:var(--text-dim); }
.folder-dialog-error { color:var(--text-mid); font-size:12px; line-height:1.5; }
.folder-dialog-error:empty { display:none; }
.folder-dialog-actions { display:flex; gap:8px; align-items:center; margin-top:24px; flex-wrap:wrap; }
.folder-dialog-actions > span { flex:1; }
.folder-remove { color:var(--text-dim); }
#board-folder-dialog button:disabled { opacity:.4; cursor:default; }
.boards-table button:focus-visible, #board-folders-bar button:focus-visible, .board-folder-card button:focus-visible, #board-folder-dialog button:focus-visible { outline:2px solid var(--teal); outline-offset:2px; }
@media(max-width:740px) {
  #board-folders-bar { margin:8px 0 16px; gap:8px; flex-wrap:wrap; }
  #board-folders-bar > div { margin-left:auto; }
  .boards-table .list-col-type { display:none; }
  .boards-table .list-col-count { width:24%; font-size:11px; }
  .boards-table .list-col-updated { width:19%; font-size:11px; }
  .boards-table { font-size:12px; }
  .boards-table th, .boards-table td { padding-left:7px; padding-right:7px; }
  .boards-table td, .board-list-open { min-height:50px; height:50px; }
  .board-list-open { gap:7px; }
  .board-list-open > svg { width:16px; height:16px; }
  .folder-load-error { display:none; }
}
@media(max-width:420px) { .boards-table .list-col-updated { display:none; } .boards-table .list-col-count { width:27%; } }
