#indexContentBody > #orqContent {
    height: calc(100vh - 170px);
    min-height: 520px;
}

#orqContent {
    width: 100%;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    gap: 0;
    box-sizing: border-box;
    overflow: hidden;
}

#orqTabsBar {
    width: 100%;
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    border-bottom: 1px solid #e6e8ee;
    padding-bottom: 0;
    margin-bottom: 20px;
}

.orqTabBtn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 16px;
    border-radius: 10px 10px 0 0;
    border: 1px solid transparent;
    background-color: transparent;
    cursor: pointer;
    color: #6b6d73;
    user-select: none;
    transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease;
    margin-bottom: -1px;
    font-family: 'Inter', Arial, sans-serif;
}

.orqTabBtn:hover {
    color: #473bf0;
    background-color: #f7f7ff;
}

.orqTabBtn.orqTabActive {
    background-color: #ffffff;
    color: #473bf0;
    border-color: #e6e8ee;
    border-bottom-color: #ffffff;
    font-weight: 700;
}

.orqTabIco {
    width: 16px;
    height: 16px;
    min-width: 16px;
    min-height: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.orqTabIco svg { width: 100%; height: 100%; display: block; }

.orqTabLbl {
    font-size: 0.875em;
    white-space: nowrap;
}

.orqTabContent {
    width: 100%;
    display: flex;
    flex-direction: row;
    gap: 20px;
    flex: 1;
    min-height: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.orqTabContentHidden { display: none !important; }

#orqLeft,
#orqVmLeft {
    flex: 1;
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
}

#orqCards,
#orqVmCards {
    width: 100%;
    display: flex;
    gap: 20px;
    flex-shrink: 0;
}

#orqCards .boxCard,
#orqVmCards .boxCard {
    flex: 1;
}

#orqCards .boxCard .boxBody,
#orqVmCards .boxCard .boxBody {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 88px;
}

#orqBodyLeft,
#orqVmBodyLeft {
    flex: 1;
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
}

#orqBodyRight,
#orqVmBodyRight {
    width: 520px;
    min-width: 520px;
    max-width: 520px;
    flex-shrink: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#orqScheduleEmptyCard {
    width: 100%;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

#orqScheduleEmptyCard .boxBody {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    min-height: 0;
}

#orqScheduleEmptyWrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 24px;
    text-align: center;
    max-width: 520px;
}

#orqScheduleEmptyIco {
    width: 56px;
    height: 56px;
    min-width: 56px;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #473bf0;
    background: #eef1ff;
    border-radius: 16px;
    padding: 10px;
    box-sizing: border-box;
    margin-bottom: 4px;
}
#orqScheduleEmptyIco svg { width: 100%; height: 100%; display: block; }

#orqScheduleEmptyTit {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 1.15em;
    font-weight: 700;
    color: #141823;
    line-height: 1.2;
}

#orqScheduleEmptySub {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.88em;
    font-weight: 400;
    color: #6b6d73;
    line-height: 1.55;
}

#orqBindsCard,
#orqVmBindsCard {
    width: 100%;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

#orqBindsCard .boxBody,
#orqVmBindsCard .boxBody {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

#orqBindsCard .tblHeader,
#orqVmBindsCard .tblHeader {
    flex-shrink: 0;
    margin-bottom: 0;
    padding-right: 18px;
}

#orqBindsCard .tblBody,
#orqVmBindsCard .tblBody {
    width: 100%;
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    scrollbar-gutter: stable;
    padding-right: 2px;
}

#orqLogsCard,
#orqVmLogsCard {
    width: 100%;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

#orqLogsCard .boxBody,
#orqVmLogsCard .boxBody {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

#orqLogsCard .tblHeader,
#orqVmLogsCard .tblHeader {
    flex-shrink: 0;
    margin-bottom: 0;
    padding-right: 18px;
}

#orqLogsCard .tblBody,
#orqVmLogsCard .tblBody {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    scrollbar-gutter: stable;
    padding-right: 2px;
}

.orqRefreshBtn {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    border-radius: 8px;
    border: 1px solid #dfe3ea;
    background-color: #ffffff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #5a5c63;
    transition: border-color 150ms ease, color 150ms ease, background-color 150ms ease, transform 120ms ease;
    user-select: none;
}

.orqRefreshBtn:hover {
    border-color: #473bf0;
    color: #473bf0;
    background-color: #fafaff;
}

.orqRefreshBtn:active {
    transform: scale(0.97);
}

.orqRefreshIco {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: none;
    transform: translateZ(0);
    will-change: transform;
}
.orqRefreshIco svg {
    width: 100%;
    height: 100%;
    display: block;
    fill: currentColor;
    stroke: none;
}
.orqRefreshIco.rotating {
    animation: orqSpin 1000ms linear infinite !important;
    transition: none !important;
}

@keyframes orqSpin {
    from { transform: rotate(0deg) translateZ(0); }
    to   { transform: rotate(360deg) translateZ(0); }
}

.orqEmpty {
    padding: 28px 12px;
    color: #7f8083;
    font-size: 0.875em;
    text-align: center;
}

#orqBindsCard .tblBody .rowZebra.rowOdd,
#orqVmBindsCard .tblBody .rowZebra.rowOdd {
    background-color: transparent;
}

#orqBindsCard .tblBody .rowZebra.rowEven,
#orqVmBindsCard .tblBody .rowZebra.rowEven {
    background-color: transparent;
}

#orqBindsCard .tblBody .tblRow.rowClickable,
#orqVmBindsCard .tblBody .tblRow.rowClickable {
    cursor: pointer;
    margin-bottom: 2px;
    border-radius: 4px;
    transition: background-color 150ms ease, transform 150ms ease;
}

#orqBindsCard .tblBody .tblRow.rowClickable:last-child,
#orqVmBindsCard .tblBody .tblRow.rowClickable:last-child {
    margin-bottom: 0;
}

#orqBindsCard .tblBody .tblRow.rowClickable:hover,
#orqVmBindsCard .tblBody .tblRow.rowClickable:hover {
    background-color: #e5e8f0 !important;
}

#orqBindsCard .tblBody .tblRow.rowClickable.rowOpen,
#orqVmBindsCard .tblBody .tblRow.rowClickable.rowOpen {
    background-color: #ecefff !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    position: relative;
    z-index: 2;
    margin-bottom: -1px;
}

.orqGrp0 { background-color: #fafbfd; }
.orqGrp1 { background-color: #fff7f7; }
.orqGrp2 { background-color: #fffaf0; }
.orqGrp3 { background-color: #f5fbff; }
.orqGrp4 { background-color: #f2fff8; }
.orqGrpOff { background-color: #f1f4f9; opacity: 0.88; }

#orqLogsCard .tblBody .rowZebra.rowOdd {
    background-color: #f1f4f9;
}

#orqLogsCard .tblBody .rowZebra.rowEven {
    background-color: #ffffff;
}

.orqColAtv {
    width: 80px;
    min-width: 80px;
    max-width: 80px;
    justify-content: center;
    align-items: center;
    padding-right: 8px;
    flex-shrink: 0;
    flex-grow: 0;
    display: flex;
    flex-direction: row;
}

.orqColVmss {
    width: 160px;
    min-width: 160px;
    max-width: 160px;
    padding-right: 10px;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    flex-direction: column;
    gap: 2px;
    flex-shrink: 0;
    flex-grow: 0;
    overflow: hidden;
    display: flex;
}

.orqVmssName {
    font-weight: 600;
    color: #000000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    min-width: 0;
    text-align: left;
}

.orqVmssRg {
    font-size: 0.75em;
    color: #b5b6ba;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    min-width: 0;
    text-align: left;
}

.orqColGrupo {
    flex: 1 1 auto;
    min-width: 180px;
    padding-right: 10px;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    flex-direction: column;
    gap: 2px;
    width: 0;
    display: flex;
}

.orqGrupoName {
    font-weight: 600;
    color: #000000;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    text-align: left;
}

.orqGrupoId {
    font-size: 0.75em;
    color: #b5b6ba;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    text-align: left;
}

.orqColAmb {
    width: 76px;
    min-width: 76px;
    max-width: 76px;
    justify-content: center;
    align-items: center;
    padding-right: 8px;
    flex-shrink: 0;
    flex-grow: 0;
    display: flex;
    flex-direction: row;
}

.orqAmbTag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    min-width: 40px;
    padding: 0 10px;
    border-radius: 4px;
    font-size: 0.75em;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.oAmbDev {
    background-color: #e5e7ff;
    color: #473bf0;
}

.oAmbHml {
    background-color: #fff7e0;
    color: #a86900;
}

.oAmbPrd {
    background-color: #e3f5eb;
    color: #1c7c54;
}

.oAmbOther {
    background-color: #f1f4f9;
    color: #7f8083;
}

.orqColFila {
    width: 72px;
    min-width: 72px;
    max-width: 72px;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    flex-shrink: 0;
    flex-grow: 0;
    text-align: center;
    display: flex;
    flex-direction: row;
}

.orqColActive {
    width: 92px;
    min-width: 92px;
    max-width: 92px;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    flex-shrink: 0;
    flex-grow: 0;
    text-align: center;
    display: flex;
    flex-direction: row;
}

.orqNum {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: 100%;
    font-weight: 600;
}

.orqNum .slotLine {
    font-size: 0.9375em;
    font-weight: 700;
}

.orqNumText {
    font-variant-numeric: tabular-nums;
}

.orqColInst {
    width: 122px;
    min-width: 122px;
    max-width: 122px;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    flex-shrink: 0;
    flex-grow: 0;
    text-align: center;
    display: flex;
    flex-direction: row;
}

.orqColCd {
    width: 64px;
    min-width: 64px;
    max-width: 64px;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    flex-shrink: 0;
    flex-grow: 0;
    text-align: center;
    display: flex;
    flex-direction: row;
}

.orqNumCell {
    display: flex;
    align-items: center;
    justify-content: center;
}

.orqNumProv {
    font-weight: 600;
    color: #000000;
    text-align: center;
    width: 100%;
    justify-content: center;
}

.orqCdCell {
    display: flex;
    align-items: center;
    justify-content: center;
}

.orqCdText .orqCdCounter {
    font-size: 0.8125em;
    font-weight: 600;
    color: #2e2e33;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.orqInp {
    width: 100%;
    height: 32px;
    max-width: 120px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid #dfe3ea;
    border-radius: 6px;
    background-color: #ffffff;
    color: #000000;
    font-size: 0.875em;
    font-weight: 600;
    text-align: center;
    box-sizing: border-box;
    outline: none;
    transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
}

.orqInp:focus {
    border-color: #473bf0;
    background-color: #fafaff;
    box-shadow: 0 0 0 3px rgba(71, 59, 240, 0.08);
}

.orqInpCd {
    max-width: 120px;
}

.orqCdWrapDetail {
    display: flex;
    align-items: center;
    gap: 10px;
}

.orqCdWrapDetail .orqCdCounter {
    font-size: 0.75em;
    font-weight: 600;
    color: #5a5c63;
    background-color: #f1f4f9;
    padding: 2px 8px;
    border-radius: 4px;
    white-space: nowrap;
}

.orqToggle {
    width: 44px;
    min-width: 44px;
    height: 22px;
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    cursor: pointer;
    transition: transform 120ms ease, opacity 120ms ease;
    user-select: none;
}

.orqToggle:hover {
    transform: scale(1.04);
}

.orqToggle:active {
    transform: scale(0.97);
}

.orqToggle svg {
    width: 100%;
    height: 100%;
    display: block;
}

.rowDetail {
    width: 100%;
    box-sizing: border-box;
    padding: 0 16px 16px 16px;
    background-color: #ecefff;
    border-left: 1px solid #e0e3ef;
    border-right: 1px solid #e0e3ef;
    border-bottom: 1px solid #e0e3ef;
    border-radius: 0 0 12px 12px;
    display: none;
    margin-bottom: 12px;
}

.rowDetail.rowDetailOpen {
    display: block;
}

.dGrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 16px;
    row-gap: 12px;
    padding-top: 6px;
}

.dItem {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.dItem.dFull {
    grid-column: 1 / -1;
}

.dLabel {
    font-size: 0.75em;
    font-weight: 600;
    color: #5e6070;
    letter-spacing: 0.01em;
}

.dValue {
    font-size: 0.9375em;
    color: #15171c;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 32px;
}

.dHint {
    font-size: 0.75em;
    font-weight: 500;
    color: #8b8c93;
    width: 100%;
}

.dSectionTitle {
    padding-top: 6px;
    margin-top: 6px;
    border-top: 1px dashed #d8dbec;
}

.dSectionTitle .dLabel {
    font-size: 0.8125em;
    color: #2c2d34;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.orqVerMaisBtn {
    height: 28px;
    min-height: 28px;
    padding: 0 10px 0 12px;
    border-radius: 7px;
    border: 1px solid #e0e3ec;
    background-color: #ffffff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #473bf0;
    transition: border-color 150ms ease, color 150ms ease, background-color 150ms ease, transform 120ms ease;
    user-select: none;
}
.orqVerMaisBtn:hover {
    border-color: #473bf0;
    background-color: #fafaff;
}
.orqVerMaisBtn:active {
    transform: scale(0.97);
}
.orqVerMaisLbl {
    font-size: 0.75em;
    font-weight: 700;
    letter-spacing: 0.02em;
}
.orqVerMaisArr {
    font-size: 0.875em;
    font-weight: 700;
    line-height: 1;
}

.logColDt {
    width: 104px;
    min-width: 104px;
    max-width: 104px;
    padding-right: 8px;
    flex-shrink: 0;
    flex-grow: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 2px;
}
.logDtCellWrap {
    display: flex;
    flex-direction: column;
    gap: 2px;
    align-items: flex-start;
    width: 100%;
}
.logDtData {
    font-size: 0.8125em;
    font-weight: 700;
    color: #1e1e22;
    white-space: nowrap;
    line-height: 1.2;
}
.logDtHora {
    font-size: 0.75em;
    color: #6b6d73;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
}

.logColVmss {
    flex: 1;
    min-width: 0;
    padding-right: 10px;
    font-size: 0.8125em;
    font-weight: 600;
    color: #2e2e33;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.logColAcao {
    width: 130px;
    min-width: 130px;
    max-width: 130px;
    padding: 0 6px;
    flex-shrink: 0;
    flex-grow: 0;
    justify-content: center;
}
.logColSt {
    width: 70px;
    min-width: 70px;
    max-width: 70px;
    padding: 0 6px;
    flex-shrink: 0;
    flex-grow: 0;
    justify-content: center;
}
.tblHeaderLog .logColDt { justify-content: flex-start; }
.tblHeaderLog .logColVmss { justify-content: flex-start; }
.tblHeaderLog .logColAcao { justify-content: center; padding: 0 6px; }
.tblHeaderLog .logColSt { justify-content: center; padding: 0 6px; }
.logAcaoTxtWrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
}
.logStWrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.logAcaoTxt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    min-width: 68px;
    max-width: 100%;
    padding: 0 9px;
    border-radius: 4px;
    font-size: 0.7em;
    font-weight: 700;
    letter-spacing: 0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.orqLogAcaoLigar { background-color: #e3f0ff; color: #1550b0; }
.orqLogAcaoDesligar { background-color: #ffece8; color: #a93c23; }
.orqLogAcaoOther { background-color: #f1f4f9; color: #5a5c63; }

.logStIco {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    padding: 0;
}
.logStIco svg {
    width: 100%;
    height: 100%;
    display: block;
}
.orqLogStOk { color: #1c7c54; }
.orqLogStFail { color: #d43d3d; }
.orqLogStRate { color: #473bf0; }

#orqToast {
    position: fixed;
    top: 24px;
    left: 50%;
    transform: translateX(-50%) translateY(-8px);
    min-width: 280px;
    max-width: 480px;
    padding: 12px 20px;
    background-color: #ffffff;
    border: 2px solid #473bf0;
    border-radius: 10px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    opacity: 0;
    transition: opacity 220ms ease, transform 220ms ease;
    box-sizing: border-box;
}

.orqToastTxt {
    font-size: 0.875em;
    font-weight: 500;
    color: #1a1a1a;
    text-align: center;
    line-height: 1.3;
}

#orqBindsCard .tblBody .tblRow.orqGrp1,
#orqVmBindsCard .tblBody .tblRow.orqGrp1 {
    background-color: #eefaf3 !important;
}
#orqBindsCard .tblBody .tblRow.orqGrp1:hover,
#orqVmBindsCard .tblBody .tblRow.orqGrp1:hover { background-color: #d8f2e2 !important; }
#orqBindsCard .tblBody .tblRow.orqGrp1.rowOpen,
#orqVmBindsCard .tblBody .tblRow.orqGrp1.rowOpen { background-color: #d1f0dc !important; }

#orqBindsCard .tblBody .tblRow.orqGrp2,
#orqVmBindsCard .tblBody .tblRow.orqGrp2 {
    background-color: #fff8e8 !important;
}
#orqBindsCard .tblBody .tblRow.orqGrp2:hover,
#orqVmBindsCard .tblBody .tblRow.orqGrp2:hover { background-color: #fff0cc !important; }
#orqBindsCard .tblBody .tblRow.orqGrp2.rowOpen,
#orqVmBindsCard .tblBody .tblRow.orqGrp2.rowOpen { background-color: #ffebc2 !important; }

#orqBindsCard .tblBody .tblRow.orqGrp3,
#orqVmBindsCard .tblBody .tblRow.orqGrp3 {
    background-color: #f3f2ff !important;
}
#orqBindsCard .tblBody .tblRow.orqGrp3:hover,
#orqVmBindsCard .tblBody .tblRow.orqGrp3:hover { background-color: #e1deff !important; }
#orqBindsCard .tblBody .tblRow.orqGrp3.rowOpen,
#orqVmBindsCard .tblBody .tblRow.orqGrp3.rowOpen { background-color: #d9d6ff !important; }

#orqBindsCard .tblBody .tblRow.orqGrp4,
#orqVmBindsCard .tblBody .tblRow.orqGrp4 {
    background-color: #f8fafc !important;
}
#orqBindsCard .tblBody .tblRow.orqGrp4:hover,
#orqVmBindsCard .tblBody .tblRow.orqGrp4:hover { background-color: #e5e8f0 !important; }
#orqBindsCard .tblBody .tblRow.orqGrp4.rowOpen,
#orqVmBindsCard .tblBody .tblRow.orqGrp4.rowOpen { background-color: #ecefff !important; }

#orqBindsCard .tblBody .tblRow.orqGrpOff,
#orqVmBindsCard .tblBody .tblRow.orqGrpOff {
    background-color: #fff1f2 !important;
}
#orqBindsCard .tblBody .tblRow.orqGrpOff:hover,
#orqVmBindsCard .tblBody .tblRow.orqGrpOff:hover { background-color: #ffe0e3 !important; }
#orqBindsCard .tblBody .tblRow.orqGrpOff.rowOpen,
#orqVmBindsCard .tblBody .tblRow.orqGrpOff.rowOpen { background-color: #ffd5d9 !important; }

.orqCdCircle {
    width: 26px;
    min-width: 26px;
    max-width: 26px;
    height: 26px;
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.orqCdCircle svg {
    width: 26px;
    height: 26px;
    display: block;
    transform: rotate(-90deg);
}
.orqCdCircle svg circle {
    fill: none;
    stroke-width: 3;
}
.orqCdCircle .orqCdCircleBg {
    stroke: #e5e8f0;
}
.orqCdCircle .orqCdCircleFill {
    stroke: #473bf0;
    stroke-linecap: round;
    transition: stroke-dashoffset 320ms cubic-bezier(.4,0,.2,1), filter 220ms ease, drop-shadow 220ms ease;
    filter: saturate(1);
}
.orqCdCircle.orqCdCircleGrow .orqCdCircleFill {
    animation: orqCdCircleGrowAnim 520ms ease-out;
    filter: saturate(1);
}
@keyframes orqCdCircleGrowAnim {
    0%   { filter: saturate(1.2) drop-shadow(0 0 0 rgba(71,59,240,0)); }
    25%  { filter: saturate(1.8) drop-shadow(0 0 5px rgba(71,59,240,0.55)); }
    55%  { filter: saturate(1.4) drop-shadow(0 0 3px rgba(71,59,240,0.28)); }
    100% { filter: saturate(1)   drop-shadow(0 0 0 rgba(71,59,240,0)); }
}

.orqFlashUp { animation: orqFlashUpAnim 460ms ease-out; }
.orqFlashDown { animation: orqFlashDownAnim 460ms ease-out; }
@keyframes orqFlashUpAnim {
    0% { color: inherit; transform: translateY(0); }
    20% { color: #16a34a; text-shadow: 0 0 10px rgba(22,163,74,0.35); transform: translateY(-2px); }
    100% { color: inherit; text-shadow: none; transform: translateY(0); }
}
@keyframes orqFlashDownAnim {
    0% { color: inherit; transform: translateY(0); }
    20% { color: #dc2626; text-shadow: 0 0 10px rgba(220,38,38,0.35); transform: translateY(2px); }
    100% { color: inherit; text-shadow: none; transform: translateY(0); }
}

.orqDrawerOverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 220ms ease;
    z-index: 9998;
}
.orqDrawerOverlay.isOpen {
    opacity: 1;
    pointer-events: auto;
}

.orqDrawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 560px;
    max-width: 92vw;
    height: 100vh;
    background-color: #ffffff;
    box-shadow: 2px 0 24px rgba(15, 23, 42, 0.16);
    z-index: 9999;
    transform: translateX(-102%);
    transition: transform 260ms cubic-bezier(.4,0,.2,1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.orqDrawer.isOpen {
    transform: translateX(0);
}

.orqDrawerHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    border-bottom: 1px solid #e8eaf0;
    background: linear-gradient(180deg, #fafbfd 0%, #ffffff 100%);
    flex-shrink: 0;
}
.orqDrawerHeaderLeft {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}
.orqDrawerIcon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    border-radius: 8px;
    background-color: #473bf0;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orqDrawerIcon svg {
    width: 20px;
    height: 20px;
}
.orqDrawerTitles {
    display: flex;
    flex-direction: column;
    min-width: 0;
    max-width: 100%;
}
.orqDrawerTitle {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    font-size: 1em;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 380px;
}
.orqDrawerSubtitle {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    font-size: 0.78em;
    font-weight: 400;
    color: #7f8083;
    line-height: 1.3;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 380px;
}
.orqDrawerClose {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f3f4f7;
    transition: background-color 150ms ease, transform 150ms ease;
    user-select: none;
}
.orqDrawerClose:hover {
    background-color: #e8eaf0;
}
.orqDrawerClose:active {
    transform: scale(0.95);
}
.orqDrawerClose svg {
    width: 16px;
    height: 16px;
}

.orqDrawerBody {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 18px;
    scrollbar-width: thin;
    scrollbar-color: #d8dbe4 #ffffff;
}
.orqDrawerBody::-webkit-scrollbar {
    width: 8px;
}
.orqDrawerBody::-webkit-scrollbar-track {
    background: #ffffff;
}
.orqDrawerBody::-webkit-scrollbar-thumb {
    background-color: #d8dbe4;
    border-radius: 4px;
}

.orqDrawerBody .dGrid {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.orqDrawerBody .dGrid .dFull {
    width: 100%;
    flex: 1;
    min-width: 0;
}
.orqDrawerBody .dItem {
    display: flex;
    flex-direction: column;
    gap: 6px;
    background-color: #f8fafc;
    border: 1px solid #eef0f5;
    border-radius: 8px;
    padding: 10px 12px;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}
.orqDrawerBody .dItem.dSectionTitle {
    background-color: transparent !important;
    border: 0 !important;
    padding: 8px 4px 0 4px !important;
}
.orqDrawerBody .dLabel {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    font-size: 0.72em;
    font-weight: 600;
    color: #7f8083;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.orqDrawerBody .dValue {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    font-size: 0.92em;
    font-weight: 500;
    color: #1a1a1a;
    line-height: 1.4;
    word-break: normal;
    overflow-wrap: break-word;
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}
.orqDrawerBody .dValue > div:not(.dHint):not(.orqAmbTag):not(.orqInstValStatic):not(.orqCdCounter):not(.orqCdWrapDetail) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}
.orqDrawerBody .dValue .dHint {
    font-size: 0.75em;
    font-weight: 400;
    color: #7f8083;
    line-height: 1.35;
    margin-top: 2px;
}
.orqDrawerBody .dSectionTitle .dLabel {
    font-size: 0.85em;
    font-weight: 700;
    color: #1a1a1a;
    letter-spacing: 0;
    text-transform: none;
    padding-bottom: 4px;
    border-bottom: 1px solid #e8eaf0;
}
.orqDrawerBody .orqInp {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid #d8dbe4;
    background-color: #ffffff;
    border-radius: 6px;
    font-family: ui-monospace, "Cascadia Code", Menlo, monospace;
    font-size: 0.85em;
    font-weight: 500;
    color: #1a1a1a;
    outline: none;
    transition: border-color 150ms ease, box-shadow 150ms ease;
    box-sizing: border-box;
}
.orqDrawerBody .orqInp:focus {
    border-color: #473bf0;
    box-shadow: 0 0 0 3px rgba(71, 59, 240, 0.12);
}
.orqDrawerBody .orqCdWrapDetail {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}
.orqDrawerBody .orqCdWrapDetail .orqInp {
    flex: 1;
    min-width: 0;
}
.orqDrawerBody .orqCdWrapDetail .orqCdCounter {
    font-family: ui-monospace, "Cascadia Code", Menlo, monospace;
    font-size: 0.78em;
    font-weight: 600;
    color: #473bf0;
    background-color: #efeefe;
    padding: 4px 8px;
    border-radius: 5px;
    white-space: nowrap;
}
.orqDrawerBody .orqInstValStatic {
    font-family: ui-monospace, "Cascadia Code", Menlo, monospace;
    font-size: 0.9em;
    font-weight: 600;
    color: #1a1a1a;
}
.orqDrawerBody .dItem.dFull.orqAmbRow {
    align-items: flex-start;
}

.orqStatusWrap {
    width: 44px;
    min-width: 44px;
    height: 22px;
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: default;
    user-select: none;
}
.orqStatusDot {
    width: 16px;
    height: 16px;
    min-width: 16px;
    min-height: 16px;
    border-radius: 50%;
    display: inline-flex;
}
.orqStatusDotAtivo {
    background-color: #1a9d4c;
    box-shadow: 0 0 0 3px #e4f8e6;
}
.orqStatusDotInativo {
    background-color: #a9aab0;
    box-shadow: 0 0 0 3px #f0f1f4;
}
.orqInp:disabled {
    background-color: #f5f6f8;
    color: #6c6e75;
    border-color: #e2e5ec;
    cursor: not-allowed;
    opacity: 0.85;
}

/* ============================================================
   MODULO: SCHEDULE VM (ids/classes com prefixo orqSch)
   ============================================================ */

#orqSchCard {
    width: 100%;
    max-width: 100%;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}
#orqSchCard .boxBody {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

#orqSchCard .boxTopRight {
    display: flex;
    align-items: center;
    gap: 8px;
}

.orqSchSearchWrap {
    width: 280px;
    min-width: 200px;
    height: 32px;
    min-height: 32px;
    max-height: 32px;
    padding: 0 10px;
    border: 1px solid #ebeff0;
    border-radius: 8px;
    background-color: #ffffff;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: border-color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
    flex-shrink: 0;
}
.orqSchSearchWrap:hover {
    border-color: #dfe4ea;
    background-color: #fafcff;
}
.orqSchSearchWrap.orqSchSearchFocused {
    border-color: #473bf0;
    background-color: #ffffff;
    box-shadow: 0 0 0 3px rgba(71, 59, 240, 0.1);
}
.orqSchSearchIcon {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orqSchSearchIcon svg {
    width: 18px;
    height: 18px;
    display: block;
}
.orqSchSearch {
    flex: 1 1 auto;
    min-width: 0;
    height: 22px;
    border: 0;
    padding: 0;
    margin: 0;
    background-color: transparent;
    color: #000000;
    font-size: 0.8125em;
    box-sizing: border-box;
    outline: none;
}
.orqSchSearch::placeholder {
    color: #a9aab0;
}
.orqSchSearchClear {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    flex-shrink: 0;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border-radius: 4px;
    opacity: 0.85;
    transition: opacity 120ms ease, background-color 120ms ease;
}
.orqSchSearchClear:hover {
    opacity: 1;
    background-color: #fdecec;
}
.orqSchSearchClear svg {
    width: 14px;
    height: 14px;
    display: block;
}
.orqSchSearchWrap.orqSchSearchHasValue .orqSchSearchClear {
    display: flex;
}

.orqSchBtnAdd {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    border-radius: 8px;
    background-color: #0ea5e9;
    color: #ffffff;
    cursor: pointer;
    user-select: none;
    transition: background-color 160ms ease, transform 120ms ease, box-shadow 160ms ease;
    box-shadow: 0 2px 6px rgba(14, 165, 233, 0.28);
    flex-shrink: 0;
}
.orqSchBtnAdd:hover {
    background-color: #0284c7;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.36);
}
.orqSchBtnAdd:active {
    transform: translateY(1px);
}
.orqSchBtnAddIco {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orqSchBtnAddIco svg {
    width: 18px;
    height: 18px;
    fill: none;
    display: block;
}

#orqSchEmpty {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px 36px;
    text-align: center;
    box-sizing: border-box;
}
#orqSchEmptyIco {
    width: 56px;
    height: 56px;
    color: #cbd0dc;
    margin-bottom: 14px;
}
#orqSchEmptyIco svg {
    width: 100%;
    height: 100%;
    fill: none;
    display: block;
}
#orqSchEmptyTit {
    font-size: 1.05em;
    font-weight: 700;
    color: #1a1d26;
    margin-bottom: 6px;
}
#orqSchEmptySub {
    font-size: 0.875em;
    color: #6c6e75;
    line-height: 1.55;
    max-width: 560px;
}

#orqSchLoading {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 16px;
}
.orqSchLoadingTxt {
    font-size: 0.875em;
    color: #6c6e75;
    text-align: center;
}

#orqSchListaWrap {
    width: 100%;
    box-sizing: border-box;
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

#orqSchHeader.tblHeader {
    padding: 10px 14px;
    flex-shrink: 0;
    margin-bottom: 0;
    padding-right: 18px;
}
#orqSchBodyLista.tblBody {
    width: 100%;
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    scrollbar-gutter: stable;
    padding: 4px 2px 10px 2px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#orqSchBodyLista .tblRow.rowZebra {
    background-color: #f8fafc;
    border: 1px solid #eef0f4;
    border-radius: 8px;
    padding: 10px 14px;
    margin: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-height: 46px;
    gap: 12px;
}
#orqSchBodyLista .tblRow.rowZebra.rowEven,
#orqSchBodyLista .tblRow.rowZebra.rowOdd {
    background-color: #f8fafc;
}

#orqSchBodyLista .tblRow.rowZebra .tblCell {
    align-self: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    min-height: 26px;
}

#orqSchBodyLista .tblRow.rowZebra .orqSchColVm .orqSchCellVmInner,
#orqSchBodyLista .tblRow.rowZebra .orqSchColStatus .orqSchStatusCell {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 26px;
}

#orqSchBodyLista .tblRow.rowZebra .orqSchColVm .orqSchCellVmInner .orqSchVmNome {
    line-height: 1.3;
    padding-top: 1px;
}

.orqSchColVm       { flex: 1.6; min-width: 0; text-align: left; justify-content: flex-start; align-items: flex-start; }
.orqSchColStatus   { flex: 1.2; min-width: 0; text-align: left; justify-content: flex-start; align-items: flex-start; }
.orqSchColLigar    { flex: 0.9; min-width: 0; text-align: right; justify-content: flex-end; align-items: flex-end; }
.orqSchColDesligar { flex: 0.9; min-width: 0; text-align: right; justify-content: flex-end; align-items: flex-end; }
.orqSchColUltima   { flex: 1.3; min-width: 0; text-align: right; justify-content: flex-end; align-items: flex-end; }
.orqSchColAcoes    { flex: 1.8; min-width: 0; text-align: right; justify-content: flex-end; align-items: flex-end; }

#orqSchHeader .tblCell.orqSchColLigar,
#orqSchHeader .tblCell.orqSchColDesligar,
#orqSchHeader .tblCell.orqSchColUltima,
#orqSchHeader .tblCell.orqSchColAcoes { text-align: right; }

#orqSchHeader .tblCell.orqSchColVm,
#orqSchHeader .tblCell.orqSchColStatus { text-align: left; }

.orqSchColAcoes.orqSchAlignRight { text-align: right; justify-content: flex-end; align-items: flex-end; }

#orqSchBodyLista .tblRow .tblCell.orqSchColLigar .orqSchHoraCell,
#orqSchBodyLista .tblRow .tblCell.orqSchColDesligar .orqSchHoraCell {
    margin-left: auto;
    align-items: flex-end;
}

#orqSchBodyLista .tblRow .tblCell.orqSchColUltima .orqSchUltimaWrap { justify-content: flex-end; margin-left: auto; }

#orqSchBodyLista .tblRow .tblCell.orqSchColAcoes .orqSchAcoesWrap { justify-content: flex-end; margin-left: auto; }

.orqSchRowVmTit {
    font-size: 0.9em;
    font-weight: 700;
    color: #1a1d26;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.orqSchRowVmSub {
    font-size: 0.75em;
    color: #6c6e75;
    margin-top: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.orqSchStatusWrap {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    max-width: 100%;
}
.orqSchStatusDot {
    width: 9px;
    height: 9px;
    min-width: 9px;
    min-height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
}
.orqSchStatusDotRun { background-color: #1a9d4c; box-shadow: 0 0 0 3px #e4f8e6; }
.orqSchStatusDotOff { background-color: #a9aab0; box-shadow: 0 0 0 3px #f0f1f4; }
.orqSchStatusTxt {
    font-size: 0.8125em;
    font-weight: 600;
    color: #1a1d26;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}
.orqSchStatusSub {
    font-size: 0.72em;
    color: #6c6e75;
    margin-top: 2px;
}
.orqSchStatusColInner {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.orqSchHoraCell {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 4px 0;
}
.orqSchHoraLbl {
    font-family: ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;
    font-size: 1.0em;
    font-weight: 700;
    color: #1a1d26;
    line-height: 1.1;
    letter-spacing: 0.02em;
}
.orqSchHoraCountdown {
    font-family: ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;
    font-size: 0.7em;
    color: #8b8d94;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.2;
}
.orqSchHoraCountdown.countdownSoon {
    color: #d97706;
    font-weight: 600;
}
.orqSchHoraLigar .orqSchHoraLbl { color: #1a9d4c; }
.orqSchHoraDesligar .orqSchHoraLbl { color: #dc2626; }

.orqSchUltimaWrap {
    display: flex;
    align-items: center;
    gap: 0;
    min-width: 0;
    margin-left: auto;
    justify-content: flex-end;
}
.orqSchUltimaTexts {
    display: flex;
    flex-direction: column;
    min-width: 0;
    align-items: flex-end;
    text-align: right;
}
.orqSchUltimaAcaoLbl {
    font-size: 0.78em;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}
.orqSchUltimaAcaoLbl.ligar { color: #1a9d4c; }
.orqSchUltimaAcaoLbl.desligar { color: #dc2626; }
.orqSchUltimaAcaoLbl.agora { color: #0ea5e9; }
.orqSchUltimaAcaoLbl.vazio { color: #a9aab0; font-weight: 500; }
.orqSchUltimaAcaoDt {
    font-size: 0.72em;
    color: #6c6e75;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.orqSchAcoesWrap {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: nowrap;
}
.orqSchRowBtn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 30px;
    padding: 0 11px;
    border-radius: 7px;
    cursor: pointer;
    user-select: none;
    font-size: 0.78em;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    transition: background-color 140ms ease, transform 100ms ease, box-shadow 140ms ease, opacity 140ms ease;
    flex-shrink: 0;
    white-space: nowrap;
}
.orqSchRowBtn:active {
    transform: translateY(1px);
}
.orqSchRowBtnIco {
    width: 15px;
    height: 15px;
    min-width: 15px;
    min-height: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orqSchRowBtnIco svg {
    width: 15px;
    height: 15px;
    fill: none;
    display: block;
}

.orqSchBtnLigar {
    background-color: #1a9d4c;
    color: #ffffff;
    box-shadow: 0 2px 5px rgba(26, 157, 76, 0.28);
}
.orqSchBtnLigar:hover {
    background-color: #15803d;
    box-shadow: 0 4px 10px rgba(26, 157, 76, 0.34);
}
.orqSchBtnLigar:disabled,
.orqSchRowBtnDisabled,
.orqSchBtnLigar.orqSchDisabled {
    background-color: #d4d6dd !important;
    color: #6c6e75 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    opacity: 0.9;
}

.orqSchBtnEditar {
    background-color: #e0e7ff;
    color: #4338ca;
}
.orqSchBtnEditar:hover {
    background-color: #c7d2fe;
}
.orqSchRowBtn.orqSchBtnEditar {
    padding: 0 8px;
    width: 30px;
    min-width: 30px;
    justify-content: center;
}
.orqSchRowBtn.orqSchBtnEditar .orqSchRowBtnIco {
    margin: 0;
}

.orqSchBtnExcluir {
    background-color: #fee2e2;
    color: #b91c1c;
}
.orqSchBtnExcluir:hover {
    background-color: #fecaca;
    color: #991b1b;
}
.orqSchRowBtn.orqSchBtnExcluir {
    padding: 0 8px;
    width: 30px;
    min-width: 30px;
    justify-content: center;
}
.orqSchRowBtn.orqSchBtnExcluir .orqSchRowBtnIco {
    margin: 0;
}

.orqSchBtnCoolWrap {
    position: relative;
}
.orqSchBtnCoolBadge {
    position: absolute;
    top: -7px;
    right: -7px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background-color: #dc2626;
    color: #ffffff;
    font-size: 0.62em;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    z-index: 2;
    font-family: ui-monospace, "Cascadia Code", Menlo, monospace;
    letter-spacing: 0;
}

/* ---- DRAWER SCHEDULE (ADD + EDIT) ---- */

#orqSchDrawerOverlay.orqDrawerOverlay { z-index: 9997; }
#orqSchDrawer.orqDrawer { z-index: 9998; }
#orqSchDrawer .orqDrawerIcon {
    background-color: #0ea5e9;
}

.orqSchFieldWrap {
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.orqSchFieldLbl {
    font-size: 0.875em;
    font-weight: 700;
    color: #1a1d26;
    line-height: 1.2;
}
.orqSchFieldSub {
    font-size: 0.75em;
    color: #6c6e75;
    line-height: 1.35;
    margin-bottom: 2px;
}
.orqSchFieldRow {
    display: flex;
    gap: 16px;
}
.orqSchFieldHalf {
    flex: 1;
    min-width: 0;
}

.orqSchSelWrap {
    width: 100%;
    position: relative;
    z-index: 1;
}
.orqSchSelCombo {
    position: relative;
    width: 100%;
}
.orqSchSelHead {
    width: 100%;
    height: 38px;
    min-height: 38px;
    padding: 0 10px 0 12px;
    border: 1px solid #d8dbe4;
    background-color: #ffffff;
    border-radius: 6px;
    font-size: 0.875em;
    color: #1a1d26;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor: pointer;
    user-select: none;
    box-sizing: border-box;
    transition: border-color 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
}
.orqSchSelHead:hover {
    background-color: #fafcff;
    border-color: #d1d6dd;
}
.orqSchSelHead.isOpen,
.orqSchSelHead:focus-visible,
.orqSchSelHead:focus {
    border-color: #0ea5e9;
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.12);
    background-color: #ffffff;
    outline: none;
}
.orqSchSelHeadLabel {
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
    line-height: 1.2;
}
.orqSchSelHeadArr {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 140ms ease;
}
.orqSchSelHeadArr svg {
    width: 18px;
    height: 18px;
    display: block;
}
.orqSchSelHead.isOpen .orqSchSelHeadArr { transform: rotate(180deg); }

.orqSchSelDropdown {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background-color: #ffffff;
    border: 1px solid #e2e5ec;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.10);
    box-sizing: border-box;
    z-index: 9999;
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    max-height: 320px;
    min-height: 80px;
}
.orqSchSelSearchWrap {
    width: 100%;
    height: 34px;
    min-height: 34px;
    max-height: 34px;
    padding: 0 10px;
    border: 1px solid #ebeff0;
    border-radius: 7px;
    background-color: #fafcff;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 7px;
    flex-shrink: 0;
    transition: border-color 120ms ease, background-color 120ms ease, box-shadow 120ms ease;
}
.orqSchSelSearchWrap:focus-within {
    border-color: #0ea5e9;
    background-color: #ffffff;
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
.orqSchSelSearchIco {
    width: 16px;
    height: 16px;
    min-width: 16px;
    min-height: 16px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orqSchSelSearchIco svg {
    width: 16px;
    height: 16px;
    display: block;
}
.orqSchSelSearchInp {
    flex: 1;
    min-width: 0;
    height: 22px;
    border: 0;
    padding: 0;
    margin: 0;
    background-color: transparent;
    color: #1a1d26;
    font-size: 0.8125em;
    box-sizing: border-box;
    outline: none;
}
.orqSchSelSearchInp::placeholder { color: #a9aab0; }
.orqSchSelOpts {
    width: 100%;
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-right: 2px;
}
.orqSchSelOpt {
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 0.84em;
    color: #1a1d26;
    line-height: 1.25;
    cursor: pointer;
    user-select: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    transition: background-color 100ms ease;
    white-space: nowrap;
    min-height: 32px;
}
.orqSchSelOpt:hover {
    background-color: #eff6ff;
    color: #1d4ed8;
}
.orqSchSelOpt.orqSchSelEmpty {
    justify-content: center;
    text-align: center;
    color: #8b8d94;
    font-size: 0.8em;
    font-style: italic;
    cursor: default;
    background-color: transparent !important;
}
.orqSchSelOptSub {
    font-size: 0.75em;
    color: #8b8d94;
    font-weight: 400;
    flex-shrink: 0;
}

.orqSchSelNative {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    border: 0 !important;
    background: transparent !important;
}

.orqSchVmInfoBox {
    width: 100%;
    padding: 10px 14px;
    border-radius: 6px;
    background-color: #f5f6f8;
    border: 1px solid #e2e5ec;
    box-sizing: border-box;
}
.orqSchVmInfoTit {
    font-size: 0.875em;
    font-weight: 700;
    color: #1a1d26;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.orqSchVmInfoSub {
    font-size: 0.72em;
    color: #6c6e75;
    margin-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#orqSchInpHoraLigar,
#orqSchInpHoraDesligar {
    width: 100% !important;
    max-width: 100% !important;
    height: 38px;
    min-height: 38px;
    font-family: ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;
    font-size: 1.05em;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-align: center;
    padding: 6px 10px;
}

.orqSchDrawerActions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 28px;
    padding-top: 16px;
    border-top: 1px solid #eef0f4;
}
.orqSchBtn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 38px;
    padding: 0 16px;
    border-radius: 8px;
    cursor: pointer;
    user-select: none;
    transition: background-color 160ms ease, transform 100ms ease, box-shadow 160ms ease;
    flex-shrink: 0;
}
.orqSchBtn:active { transform: translateY(1px); }
.orqSchBtnLbl {
    font-size: 0.875em;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
}
.orqSchBtnIco {
    width: 17px;
    height: 17px;
    min-width: 17px;
    min-height: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.orqSchBtnIco svg {
    width: 17px;
    height: 17px;
    fill: none;
    display: block;
}

.orqSchBtnPrimary {
    background-color: #0ea5e9;
    color: #ffffff;
    box-shadow: 0 2px 6px rgba(14, 165, 233, 0.3);
}
.orqSchBtnPrimary:hover {
    background-color: #0284c7;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.4);
}
.orqSchBtnPrimary.orqSchDisabled {
    background-color: #cbd0dc !important;
    box-shadow: none !important;
    cursor: not-allowed;
    color: #ffffff;
}

.orqSchBtnGhost {
    background-color: #f5f6f8;
    color: #3e4250;
}
.orqSchBtnGhost:hover {
    background-color: #e7e9ef;
}

.orqSchBtnDanger {
    background-color: #dc2626;
    color: #ffffff;
    box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
}
.orqSchBtnDanger:hover {
    background-color: #b91c1c;
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.35);
}
.orqSchBtnDanger.orqSchDisabled {
    background-color: #cbd0dc !important;
    box-shadow: none !important;
    cursor: not-allowed;
    color: #ffffff;
}

.orqSchConfirmOverlay {
    position: fixed;
    inset: 0;
    background-color: rgba(15, 23, 42, 0.45);
    z-index: 9995;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    transition: opacity 200ms ease;
    opacity: 0;
}
.orqSchConfirmBox {
    background-color: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    width: 100%;
    max-width: 460px;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.25);
    padding: 22px 22px 18px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.orqSchConfirmTit {
    font-size: 1.05em;
    font-weight: 600;
    color: #0f172a;
    line-height: 1.3;
}
.orqSchConfirmMsg {
    font-size: 0.875em;
    color: #475569;
    line-height: 1.55;
}
.orqSchConfirmBtns {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding-top: 6px;
    flex-wrap: wrap;
}

.orqSchError {
    margin-top: 16px;
    padding: 10px 14px;
    border-radius: 7px;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    color: #b91c1c;
    font-size: 0.8125em;
    font-weight: 500;
    line-height: 1.4;
    display: flex;
    align-items: center;
    gap: 8px;
}
.orqSchError::before {
    content: "";
    width: 16px;
    height: 16px;
    min-width: 16px;
    min-height: 16px;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b91c1c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4M12 16h.01'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

#orqTabsWrap {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex-shrink: 0;
}
#orqTopRight {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-bottom: 0;
    margin-bottom: 20px;
}

#refreshTimer {
    position: relative;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    border-radius: 12px;
    overflow: visible;
    --rt-progress-deg: 0deg;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
#rtProgressFill {
    position: absolute;
    inset: 0;
    border-radius: 12px;
    background: conic-gradient(#5850ec var(--rt-progress-deg), transparent 0deg);
    opacity: 1;
    pointer-events: none;
    z-index: 1;
    transform: translateZ(0);
}
#rtFace {
    position: absolute;
    left: 2px;
    top: 2px;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    border-radius: 10px;
    border: 1px solid #dfe3ea;
    background: #ffffff;
    pointer-events: none;
    z-index: 2;
}
#rtContent {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}
#rtText {
    font-size: 0.75em;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1;
    letter-spacing: 0.01em;
}

.tblHeaderOrq .tblCell {
    padding-top: 6px;
    padding-bottom: 6px;
}

.orqHeaderCell {
    position: relative;
    cursor: pointer;
    user-select: none;
    background-color: transparent !important;
    box-shadow: none !important;
    color: #555b6d;
    font-weight: 600;
    letter-spacing: 0.01em;
}

.orqHeaderCell.orqColVmss,
.orqHeaderCell.orqColGrupo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
}

.orqHeaderCell.orqColVmss .orqHeaderInner,
.orqHeaderCell.orqColGrupo .orqHeaderInner {
    margin-left: 0;
    transform: none;
    justify-content: flex-start;
    text-align: left;
}

.orqHeaderCell.orqColAmb,
.orqHeaderCell.orqColFila,
.orqHeaderCell.orqColActive,
.orqHeaderCell.orqColInst,
.orqHeaderCell.orqColCd {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.orqHeaderCell.orqColAmb .orqHeaderInner,
.orqHeaderCell.orqColFila .orqHeaderInner,
.orqHeaderCell.orqColActive .orqHeaderInner,
.orqHeaderCell.orqColInst .orqHeaderInner,
.orqHeaderCell.orqColCd .orqHeaderInner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    margin-left: 0;
    padding-left: 12px;
    padding-right: 12px;
}

.orqHeaderCell.orqColAmb .orqHeaderLabel,
.orqHeaderCell.orqColFila .orqHeaderLabel,
.orqHeaderCell.orqColActive .orqHeaderLabel,
.orqHeaderCell.orqColInst .orqHeaderLabel,
.orqHeaderCell.orqColCd .orqHeaderLabel {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex: 1 1 auto;
    min-width: 0;
}

.orqHeaderCell.orqColAtv {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.orqHeaderCell.orqColAtv .orqHeaderInner {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding-left: 12px;
    padding-right: 12px;
}

.orqHeaderInner {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    padding: 4px 22px 4px 10px;
    border-radius: 8px;
    min-height: 32px;
    box-sizing: border-box;
    transition: background-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
    line-height: 1;
    color: #555b6d;
    background-color: transparent;
    box-shadow: none;
    max-width: 100%;
    position: relative;
}

.orqHeaderCell:hover > .orqHeaderInner {
    background-color: #f5f7fc;
    color: #1a1d2b;
    box-shadow: inset 0 0 0 1px rgba(71, 59, 240, 0.05);
}

.orqHeaderCell.orqHeaderActive > .orqHeaderInner {
    color: #473bf0;
    background-color: #f5f3ff;
    box-shadow: inset 0 0 0 1px rgba(71, 59, 240, 0.08);
}

.orqHeaderLabel {
    display: inline-block;
    min-width: 0;
    max-width: 100%;
    line-height: 1.2;
    font-weight: 600;
    font-size: 0.88em;
    letter-spacing: 0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.orqSortArr {
    display: none;
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    min-width: 14px;
    min-height: 14px;
    color: #473bf0;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    flex-shrink: 0;
    pointer-events: none;
    line-height: 0;
    margin-left: 0;
}

.orqSortArr svg {
    width: 14px;
    height: 14px;
    display: block;
    flex-shrink: 0;
}

.orqHeaderCell.orqHeaderCellRight {
    padding-right: 0 !important;
}

/* ============================================================
   MODULO: DYNAMIC - RAILS / COLLAPSIBLE PANELS (aba Dynamic)
   CÓPIA 1:1 DO PADRÃO HOME — NÃO ALTERAR NADA.
   ============================================================ */

#orqLeftWrap,
#orqRightWrap,
#orqVmLeftWrap,
#orqVmRightWrap {
    height: 100%;
    display: flex;
    align-items: stretch;
    box-sizing: border-box;
    position: relative;
    overflow: visible;
    min-width: 0;
    max-width: none;
    flex: none;
    flex-shrink: 0;
    flex-grow: 0;
    transition: width 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
    will-change: width;
    z-index: 1;
}

#orqLeftWrap,
#orqVmLeftWrap {
    width: calc(100% - 540px);
}

#orqLeftWrap.orqLeftFill,
#orqVmLeftWrap.orqLeftFill {
    width: calc(100% - 60px);
}

#orqLeftWrap.orqLeftCollapsed,
#orqVmLeftWrap.orqLeftCollapsed {
}

#orqRightWrap,
#orqVmRightWrap {
    width: 520px;
}

#orqRightWrap.orqRightFill,
#orqVmRightWrap.orqRightFill {
    width: calc(100% - 60px);
}

#orqRightWrap.orqRightCollapsed,
#orqVmRightWrap.orqRightCollapsed {
}

#orqLeft,
#orqBodyRight,
#orqVmLeft,
#orqVmBodyRight {
    width: 100%;
    flex: none;
    min-width: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
    position: relative;
    opacity: 1;
    transition: opacity 120ms ease 0ms;
}

/* overwrite padrões antigos de width fixo / flex nos paineis */
#orqLeft,
#orqVmLeft {
    flex: none !important;
    min-width: 0 !important;
}
#orqBodyRight,
#orqVmBodyRight {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex-shrink: 0 !important;
    flex: none !important;
}

/* ===== Vertical Rails (collapsed state bars) ===== */
.orqRail {
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    height: 100%;
    background-color: #ffffff;
    border: 1px solid #ebeff0;
    border-radius: 12px;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    cursor: pointer;
    box-sizing: border-box;
    padding: 4px 0;
    flex-shrink: 0;
    color: #000000;
    transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease;
    user-select: none;
    position: relative;
    z-index: 2;
}
.orqRail:hover {
    background-color: #f6f8fd;
    border-color: #dfe4ea;
}

.orqRailLeft {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
}
.orqRailRight {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
}

/* ===== Collapsed States ===== */
#orqLeftWrap.orqLeftCollapsed,
#orqVmLeftWrap.orqLeftCollapsed {
    width: 40px;
}

#orqLeftWrap.orqLeftCollapsed #orqLeft,
#orqVmLeftWrap.orqLeftCollapsed #orqVmLeft {
    opacity: 0;
}

#orqLeftWrap.orqLeftCollapsed #orqLeftRail,
#orqVmLeftWrap.orqLeftCollapsed #orqVmLeftRail {
    display: flex;
}

#orqRightWrap.orqRightCollapsed,
#orqVmRightWrap.orqRightCollapsed {
    width: 40px;
}

#orqRightWrap.orqRightCollapsed #orqBodyRight,
#orqVmRightWrap.orqRightCollapsed #orqVmBodyRight {
    opacity: 0;
}

#orqRightWrap.orqRightCollapsed #orqRightRail,
#orqVmRightWrap.orqRightCollapsed #orqVmRightRail {
    display: flex;
}

/* forçar wrap direito a não usar @media quando usuario clicou manual */
#orqRightWrap.orqRightForceOpen,
#orqVmRightWrap.orqRightForceOpen {
    width: calc(100% - 60px) !important;
    flex-grow: 1 !important;
}
#orqRightWrap.orqRightForceOpen > #orqRightRail,
#orqVmRightWrap.orqRightForceOpen > #orqVmRightRail {
    display: none !important;
}
#orqRightWrap.orqRightForceOpen > #orqBodyRight,
#orqVmRightWrap.orqRightForceOpen > #orqVmBodyRight {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.hiddenPanel {
    display: none !important;
}



/* ---- DIAS DA SEMANA SCHEDULE ---- */

.orqSchDiasRow {
    display: flex;
    gap: 6px;
    margin-top: 4px;
    width: 100%;
    justify-content: space-between;
}
.orqSchDiaBox {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    position: relative;
}
.orqSchDiaCb {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0;
    height: 0;
}
.orqSchDiaLbl {
    width: 100%;
    height: 36px;
    min-height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #dfe3ea;
    border-radius: 8px;
    background-color: #ffffff;
    color: #5e6168;
    font-size: 0.78em;
    font-weight: 700;
    cursor: pointer;
    user-select: none;
    transition: all 140ms ease;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.01em;
    box-sizing: border-box;
}
.orqSchDiaLbl:hover {
    border-color: #473bf0;
    color: #473bf0;
    background-color: #fafaff;
}
.orqSchDiaCb:checked + .orqSchDiaLbl {
    background-color: #473bf0;
    color: #ffffff;
    border-color: #473bf0;
    box-shadow: 0 2px 6px rgba(71, 59, 240, 0.25);
}

/* Badges de dias na listagem */
.orqSchDiasBadges {
    display: flex;
    gap: 3px;
    margin-top: 8px;
    justify-content: flex-end;
    flex-wrap: nowrap;
    width: 100%;
}
.orqSchDiaBadge {
    width: 22px;
    min-width: 22px;
    height: 18px;
    min-height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    font-size: 0.6em;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.01em;
    user-select: none;
    box-sizing: border-box;
}
.orqSchDiaBadge.on {
    background-color: #e3f0ff;
    color: #1550b0;
    border: 1px solid #cfe0fb;
}
.orqSchDiaBadge.off {
    background-color: #f1f4f9;
    color: #b5b6ba;
    border: 1px solid #e2e5ec;
}
