/* ---- Центр застосунків (ClientApp #/ApplicationManagement): помаранчева панель 48px, плитки 326×144 ---- */
.ah { position: fixed; inset: 0; z-index: 100000; background: #fff; font: 14px/19px Montserrat, sans-serif; color: #444; overflow: auto; scrollbar-width: none; }
.ah::-webkit-scrollbar { width: 0; }
.ah-top { position: sticky; top: 0; height: 48px; background: #ff4013; display: flex; align-items: center; justify-content: center; z-index: 2; }
.ah-title { position: absolute; left: 704px; transform: translateX(-50%); font: 500 14px/20px Montserrat, sans-serif; color: #fff; white-space: nowrap; }
.ah-logo { position: absolute; right: 16px; top: 10px; width: 72px; height: 24px; color: #fff; }
.ah-logo svg { width: 72px; height: 24px; fill: #fff; }
.ah-tools { position: relative; height: 104px; }
.ah-new { position: absolute; left: 48px; top: 64px; height: 40px; padding: 0 16px; border: 0; border-radius: 20px; background: #0d2e4e; color: #fff; font: 500 15px/16px Montserrat, sans-serif; display: flex; align-items: center; gap: 8px; cursor: pointer; }
.ah-plus { width: 16px; height: 18px; display: inline-flex; align-items: center; } .ah-plus svg { width: 16px; height: 16px; }
.ah-search { position: absolute; left: 1049px; top: 68px; display: flex; align-items: center; height: 32px; }
.ah-sico { width: 16px; height: 24px; display: inline-flex; align-items: center; color: #606060; margin-right: 6px; } .ah-sico svg { width: 16px; height: 16px; }
.ah-search input { width: 123px; border: 0; outline: 0; background: transparent; font: 500 13px/20px Montserrat, sans-serif; color: #181818; }
.ah-search input::placeholder { color: #606060; }
.ah-x { width: 22px; height: 22px; line-height: 22px; text-align: center; cursor: pointer; color: #606060; }
.ah-sort { position: absolute; left: 1259px; top: 71px; display: flex; align-items: center; height: 26px; cursor: pointer; }
.ah-sort-ico { width: 16px; height: 16px; margin-right: 8px; } .ah-sort-ico svg { width: 16px; height: 16px; }
.ah-sort-cap { font: 500 13px/20px Montserrat, sans-serif; color: #181818; }
.ah-caret { margin-left: 6px; border-top: 4px solid #181818; border-left: 4px solid transparent; border-right: 4px solid transparent; }
.ah-gallery { display: flex; flex-wrap: wrap; gap: 25px 16px; padding: 16px; margin: 0 32px; }
.ah-tile { position: relative; width: 326px; height: 144px; box-sizing: border-box; padding: 16px; border-radius: 8px; background: #fff; display: flex; cursor: pointer; outline: 0; }
.ah-tile:hover { box-shadow: 0 2px 8px rgba(0,0,0,.12); }
.ah-icon { width: 112px; height: 112px; flex: none; border-radius: 8px; display: flex; align-items: center; justify-content: center; }
.ah-icon img { width: 32px; height: 32px; }
.ah-info { flex: 1; min-width: 0; padding: 0 42px 0 16px; display: flex; flex-direction: column; justify-content: center; }
.ah-cap { font: 500 14px/18px Montserrat, sans-serif; color: #0d2e4e; text-transform: uppercase; margin-bottom: 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ah-prop { font: 500 12px/16px Montserrat, sans-serif; color: #757575; } .ah-prop + .ah-prop { margin-top: 4px; }
.ah-kebab { position: absolute; right: 8px; top: 8px; width: 24px; height: 24px; border: 0; background: transparent; border-radius: 4px; padding: 0; color: #0d2e4e; display: none; cursor: pointer; }
.ah-tile:hover .ah-kebab, .ah-kebab.on { display: block; }
.ah-kebab svg { width: 24px; height: 24px; }
.ah-menu { position: absolute; right: -40px; top: 126px; width: 186px; background: #fff; border-radius: 4px; box-shadow: 0 2px 4px -1px rgba(0,0,0,.2), 0 4px 5px rgba(0,0,0,.14), 0 1px 10px rgba(0,0,0,.12); padding: 7px 0; z-index: 3; }
.ah-mi { height: 32px; line-height: 32px; padding: 0 16px 0 48px; font: 500 13px/32px Montserrat, sans-serif; color: #181818; cursor: pointer; }
.ah-mi:hover { background: #f2f5ff; }

/* ---- Управління конфігурацією (ClientApp #/WorkspaceExplorer) ---- */
.ws { position: fixed; inset: 0; z-index: 100000; background: #ebeeef; font: 14px/19px 'Bpmonline Open Sans', 'Open Sans', sans-serif; color: #444; }
.ws-hdr { position: absolute; left: 0; top: 0; right: 0; height: 115px; background: #fff; }
.ws-title { position: absolute; left: 27px; top: 21px; font: 26px/19px 'Bpmonline Open Sans Light', sans-serif; color: #444; white-space: nowrap; }
.ws-logo { position: absolute; right: 28px; top: 18px; width: 95px; height: 28px; }
.ws-acts { position: absolute; left: 27px; top: 64px; display: flex; gap: 10px; }
.ws-btn { height: 32px; border: 0; border-radius: 2px; padding: 0 12px; font: 14px/32px 'Bpmonline Open Sans', sans-serif; text-transform: uppercase; cursor: pointer; display: inline-flex; align-items: center; background: transparent; }
.ws-btn.blue { background: #004fd6; color: #fff; }
.ws-btn.green { background: #0b8500; color: #fff; padding: 0 12px 0 0; } .ws-btn.green span { padding-left: 10px; }
.ws-btn.link { color: #004fd6; }
.ws-caret { margin-left: 10px; border-top: 4px solid #fff; border-left: 4px solid transparent; border-right: 4px solid transparent; }
.ws-caret.b { border-top-color: #004fd6; margin-left: 8px; }
.ws-left { position: absolute; left: 6px; top: 121px; bottom: 6px; width: 328px; background: #fff; overflow: auto; }
.ws-psearch { position: relative; margin: 12px 16px 0; height: 30px; display: flex; align-items: center; border-bottom: 1px solid rgba(0,0,0,.12); }
.ws-ico { width: 16px; height: 24px; display: inline-flex; align-items: center; }
.ws-psearch .ws-ico { align-self: flex-start; } .ws-ico svg { width: 16px; height: 16px; }
.ws-ico.x { cursor: pointer; width: 13px; height: 20px; }
.ws-psearch input { flex: 1; margin-left: 6px; border: 0; outline: 0; background: transparent; font: 13px/18px 'Bpmonline Open Sans', sans-serif; color: #444; }
.ws-tree { padding-top: 15px; }
.ws-node { position: relative; display: flex; align-items: center; height: 30px; cursor: pointer; padding-left: 0; }
.ws-node.l1 { padding-left: 30px; } .ws-node.l2 { padding-left: 60px; }
.ws-node.sel { background: #f2f5ff; }
.ws-node:hover { background: #f7f9ff; }
.ws-arrow { width: 15px; height: 16px; margin: 0 5px 0 9px; display: inline-flex; flex: none; }
.ws-node:not(.l1):not(.l2) .ws-arrow { margin: 0 5px 0 9px; }
.ws-node:not(.l1):not(.l2) .ws-nico { margin-right: 6px; }
.ws-node.l1 .ws-arrow { margin: 0 5px 0 0; }
.ws-node.l2 .ws-arrow.none { width: 0; margin: 0 5px 0 0; } .ws-arrow svg { width: 15px; height: 16px; }
.ws-arrow.closed { transform: rotate(-90deg); }
.ws-arrow.none { visibility: hidden; }
.ws-nico { width: 16px; height: 16px; flex: none; background: no-repeat center / 16px; margin-right: 8px; }
.ws-nname { font: 14px/19px 'Bpmonline Open Sans', sans-serif; color: #444; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ws-dot { width: 6px; height: 6px; border-radius: 50%; background: #004fd6; margin-left: 6px; flex: none; }
.ws-ntool { position: absolute; right: 17px; top: 7px; width: 16px; height: 16px; display: inline-flex; } .ws-ntool svg { width: 16px; height: 16px; }
.ws-ntool.info { color: #0d2e4e; } .ws-ntool.dots { display: none; } .ws-node:hover .ws-ntool.dots { display: inline-flex; }
.ws-right { position: absolute; left: 340px; top: 121px; right: 6px; bottom: 6px; background: #fff; overflow: auto; }
.ws-toolbar { position: relative; height: 32px; display: flex; align-items: center; padding: 6px 20px 0; box-sizing: content-box; }
.ws-abtn { height: 26px; border: 0; border-radius: 2px; background: #ff4013; color: #fff; padding: 0 24px 2px 10px; font: 13px/18px 'Bpmonline Open Sans', sans-serif; display: inline-flex; align-items: center; cursor: pointer; margin-right: 15px; }
.ws-abtn.dis { background: #939393; }
.ws-aico { width: 22px; height: 19px; padding-right: 6px; box-sizing: border-box; display: inline-flex; } .ws-aico svg { width: 16px; height: 16px; }
.ws-sel { display: inline-flex; align-items: center; height: 18px; margin-left: 8px; margin-right: 32px; cursor: pointer; font: 14px/18px 'Bpmonline Open Sans', sans-serif; color: #444; }
.ws-ico16 { width: 16px; height: 16px; margin-right: 8px; display: inline-flex; } .ws-ico16 svg { width: 16px; height: 16px; }
.ws-ssearch { position: absolute; left: 472px; top: 10px; display: flex; align-items: center; height: 24px; }
.ws-ssearch input { width: 316px; margin-left: 6px; border: 0; outline: 0; background: transparent; font: 13px/18px 'Bpmonline Open Sans', sans-serif; color: #444; }
.ws-strat { position: absolute; left: 848px; top: 16px; display: flex; gap: 4px; }
.ws-strat button { width: 24px; height: 24px; border: 0; border-radius: 8px; background: transparent; padding: 6px; color: #0d2e4e; cursor: pointer; }
.ws-strat button.on { background: #e3ebfa; } .ws-strat button svg { width: 12px; height: 12px; display: block; }
.ws-tablew { padding: 0; }
.ws-table { width: 1086px; border-collapse: collapse; table-layout: fixed; margin-top: 6px; }
.ws-table th { height: 40px; box-sizing: border-box; padding: 4px 5px 5px; text-align: left; font: 12px/19px 'Bpmonline Open Sans', sans-serif; color: #757575; border-bottom: 1px solid rgba(0,0,0,.12); cursor: pointer; white-space: nowrap; }
.ws-table th label { font: 13px/18px 'Bpmonline Open Sans', sans-serif; color: #999; cursor: pointer; }
.ws-table th.chk { padding-left: 20px; padding-right: 10px; }
.ws-sarr { display: inline-block; margin-left: 6px; border-bottom: 5px solid #999; border-left: 4px solid transparent; border-right: 4px solid transparent; vertical-align: middle; }
.ws-sarr.desc { border-bottom: 0; border-top: 5px solid #999; }
.ws-table td { height: 41px; box-sizing: border-box; padding: 0 5px; font: 13px/20px 'Bpmonline Open Sans', sans-serif; color: #444; vertical-align: middle; overflow: hidden; }
.ws-table td.chk { padding-left: 20px; }
.ws-table tr.even td { background: #fcfcfc; }
.ws-table tr:hover td { background: #f2f5ff; }
.ws-cb { display: inline-block; width: 16px; height: 16px; box-sizing: border-box; border: 2px solid #757575; border-radius: 2px; cursor: pointer; }
.ws-cb.on { background: #004fd6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' d='M4 12l5 5L20 6'/%3E%3C/svg%3E") center / 12px no-repeat; border-color: #004fd6; }
.ws-link { color: #004fd6; cursor: pointer; text-decoration: none; word-break: break-word; }
.ws-tico { display: inline-flex; width: 16px; height: 16px; vertical-align: -3px; margin-right: 8px; } .ws-tico svg { width: 16px; height: 16px; }
.ws-tico.trash, .ws-tico.dots { margin: 0; cursor: pointer; color: #444; }
.ws-table td.ic { text-align: center; } .ws-table td.ic .ws-tico { width: 16px; }
.ws-dt { display: inline-block; width: 70px; }
.ws-empty { padding: 40px; text-align: center; color: #999; }
.ws-more { padding: 12px 20px; color: #757575; font-size: 12px; }
