#allProjectsPage{width:min(1180px,94vw);height:90vh;max-height:94vh;background:var(--panel,#101a20);color:var(--text,#edf6fa);border:1px solid var(--border,#52636b);border-radius:16px;padding:0;overflow:auto}#allProjectsPage::backdrop{background:#000b}.project-library-sticky-header{position:sticky;top:0;z-index:8;background:color-mix(in srgb,var(--panel,#101a20) 96%,transparent);border-bottom:1px solid var(--border,#52636b);box-shadow:0 8px 18px #0005;backdrop-filter:blur(8px)}.project-library-sticky-header>header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px 8px}.project-library-sticky-header>header h2{margin:0}.project-library-sticky-header>header span{color:var(--muted,#a6bac4);font-size:12px}.project-library-header-actions{display:flex;gap:8px;align-items:center}.project-library-header-actions [data-create-project],.projects-header-new{background:var(--orange,#ff9b38);color:#101418;font-weight:700;white-space:nowrap}
#projectsWindow{max-height:min(88vh,900px);overflow:auto}#projectsWindow>header{position:sticky;top:0;z-index:9;background:var(--panel,#101a20)}#projectsWindow>header .projects-header-new{margin-left:auto}#projectsWindow>header .shell-close{margin-left:0}
.organization-toolbar,#allProjectsPage nav{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px}.organization-toolbar input{min-width:min(380px,70vw);flex:1}.organization-cards,.projects-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;padding:16px}.organization-card.project-library-card,.project-list-card.project-library-card{--project-card-color:var(--border,#52636b);position:relative;cursor:default;min-height:154px;border:1px solid var(--project-card-color);border-radius:14px;padding:12px;display:grid;grid-template-columns:92px minmax(0,1fr) auto;grid-template-rows:auto auto 1fr;gap:8px 12px;background:color-mix(in srgb,var(--project-card-color) 8%,var(--panel,#101a20));transition:border-color .15s,background .15s,transform .15s}.organization-card.project-library-card:hover,.project-list-card.project-library-card:hover{border-color:var(--project-card-color);background:color-mix(in srgb,var(--project-card-color) 13%,var(--panel,#101a20));transform:translateY(-1px)}
.project-card-cover{grid-row:1/4;width:92px;height:92px;border-radius:12px;overflow:hidden;display:grid;place-items:center;background:color-mix(in srgb,var(--project-card-color) 22%,#1b252b);color:var(--text,#edf6fa);font-size:34px;font-weight:700}.project-card-cover img{display:none;width:100%;height:100%;object-fit:cover}.project-card-cover.has-cover img{display:block}.project-card-cover.has-cover span{display:none}.project-card-body{min-width:0}.project-card-body h3{margin:0 0 5px;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-body p{margin:0;color:var(--muted,#a6bac4);font-size:12px;overflow-wrap:anywhere}.project-card-body .project-file-missing{margin-top:8px;color:var(--warning,#ffbf69)}
.project-card-badges{grid-column:2/4;display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}.project-state-badge{border:1px solid color-mix(in srgb,var(--project-card-color) 72%,var(--border,#52636b));border-radius:999px;padding:3px 8px;font-size:10px;letter-spacing:.06em;background:color-mix(in srgb,var(--project-card-color) 15%,transparent)}.project-state-badge.missing{border-color:var(--warning,#ff9b38);color:var(--warning,#ffbf69)}.project-card-menu{position:absolute;right:9px;top:8px}.project-card-menu-trigger{min-width:34px;padding:4px 8px;font-size:16px}.project-card-menu-popup{position:absolute;right:0;top:36px;z-index:20;min-width:220px;padding:6px;border:1px solid var(--border,#52636b);border-radius:10px;background:var(--panel,#101a20);box-shadow:0 12px 28px #0009;display:grid;gap:3px}.project-card-menu-popup.hidden{display:none}.project-card-menu-popup button,.project-card-color-action{width:100%;box-sizing:border-box;text-align:left;padding:8px 10px;border-radius:7px}.project-card-color-action{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text,#edf6fa);cursor:pointer}.project-card-color-action input{width:34px;height:24px;padding:0;border:0;background:transparent}
.project-library-card>footer{grid-column:2/4;display:flex;gap:8px;align-items:center;justify-content:flex-start}.project-library-card.current{box-shadow:inset 4px 0 0 var(--accent,var(--orange,#ff9b38))}.project-library-card.current::after{content:'● Открыт сейчас';position:absolute;left:12px;bottom:10px;color:var(--accent,var(--orange,#ff9b38));font-size:10px}.project-grab{cursor:grab;color:var(--muted,#a6bac4)}.grabbed{opacity:.45}.insert-before{border-left:6px solid var(--accent,var(--orange,#ff9b38))!important}#allProjectsPage .selected{outline:2px solid var(--accent,var(--orange,#ff9b38))}#allProjectsPage .has-match{color:var(--success,#72eead)}.organization-status{min-height:30px;margin:0;padding:7px 12px 9px;color:var(--muted,#a6bac4);font-size:12px;border-top:1px solid color-mix(in srgb,var(--border,#52636b) 55%,transparent)}.organization-status.error{color:var(--danger,#ff7e86)}#allProjectsPage button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){.organization-cards,.projects-list{grid-template-columns:1fr;padding:10px}.organization-card.project-library-card,.project-list-card.project-library-card{grid-template-columns:68px minmax(0,1fr) auto}.project-card-cover{width:68px;height:68px}.project-library-header-actions{align-items:stretch;flex-direction:column}}
.project-track-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 4px}.project-track-tools strong{font-size:12px;color:var(--muted)}#addCurrentProjectTrack{width:30px;height:30px;padding:0;border-radius:50%;font-size:20px;line-height:1}

/* HT21 D2: one local tab-assignment model powers select, context menu and DnD. */
.project-card-move-tabs{border-top:1px solid var(--border,#52636b);border-bottom:1px solid var(--border,#52636b);padding:4px 0}.project-card-move-tabs>span{display:block;padding:8px 10px 4px;font-size:11px;color:var(--muted,#a6bac4)}.project-card-move-tabs>div{display:grid;gap:2px;padding-left:8px}.project-card-move-tabs .selected-tab::before{content:'✓ '}
#allProjectsPage nav .tab-drop-target{outline:3px solid var(--accent,var(--orange,#ff9b38));background:color-mix(in srgb,var(--accent,var(--orange,#ff9b38)) 20%,var(--panel,#101a20));transform:translateY(-1px)}
/* Keep the existing label at the left while the existing add action is truly centered above the list. */
.project-track-tools{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-content:initial}.project-track-tools strong{grid-column:1}#addCurrentProjectTrack{grid-column:2;justify-self:center}

/* HT21 D3: Project Library is an accepted floating workspace window. */
#allProjectsPage{width:100%;height:100%;max-height:none;box-sizing:border-box;border:0;border-radius:0;padding:0;overflow:auto}
.domp-floating-tool[data-tool-id="project-library"]{min-width:min(640px,calc(100vw - 16px));min-height:min(420px,calc(100vh - 16px))}
.domp-floating-tool[data-tool-id="project-library"]>.domp-floating-tool-body{padding:0;overflow:hidden}
.project-card-menu-popup.project-card-menu-layer,.project-card-tab-submenu{position:fixed;right:auto;top:auto;z-index:12000;min-width:230px;max-height:min(70vh,520px);overflow:auto;padding:6px;border:1px solid var(--border,#52636b);border-radius:10px;background:var(--panel,#101a20);box-shadow:0 16px 36px #000c;display:grid;gap:3px}
.project-card-cover img.project-cover-fallback{display:block}.project-card-cover img.project-cover-canonical{display:none}.project-card-cover.has-cover img.project-cover-canonical{display:block}.project-card-cover.has-cover img.project-cover-fallback{display:none}
.project-card-tab-submenu{z-index:12001;min-width:190px}.project-card-tab-submenu.hidden{display:none}
.project-card-tab-submenu button{width:100%;box-sizing:border-box;text-align:left;padding:8px 10px;border-radius:7px}
.project-card-move-tabs-trigger{display:flex;justify-content:space-between}
.project-card-cover[data-cover-state="metadata-unavailable"],.project-card-cover[data-cover-state="content-unavailable"]{outline:1px dashed var(--warning,#ffbf69)}
