/* CSS DEV */


/* DEBUG */

.cc-debug .cc-frm {
    border: 2px solid #1e88e5 !important;
    padding: 20px !important;
}

.cc-debug .cc-fme {
    border: 2px solid #e53935 !important;
    padding: 10px !important;
}

.cc-debug .cc-say {
    border: 2px solid #8e24aa !important;
    padding: 10px !important;
}

.cc-debug .cc-htm {
    border: 2px solid #333 !important;
    padding: 10px !important;
}

.cc-debug .cc-inp {
    border: 2px solid #567d2e !important;
    padding: 2px !important;
}

.cc-debug .cc-mnu-item {
    border: 2px solid #fb8c00 !important;
}

.cc-debug .cc-btn {
    border: 2px solid #8e24aa !important;
    padding: 2px !important;
}

.cc-debug .cc-btn-col {
    border: 2px solid #8e24aa !important;
    padding: 10px !important;
}

.cc-debug .cc-inp-regra {
    background: #96c267
}

.cc-debug .cc-fme-regra {
    background: #ea605d
}

.cc-debug .cc-grd-regra {
    background: #fff391
}

.cc-debug .cc-btn-regra {
    background: #a44fbb
}

.cc-debug .cc-fme.d-none {
    border: 2px dashed #e53935 !important;
    padding: 2px !important;
}

.cc-debug .cc-inp.d-none {
    border: 2px dashed #567d2e !important;
    padding: 2px !important;
}

.cc-debug .cc-btn.d-none {
    border: 2px dashed #8e24aa !important;
    padding: 2px !important;
}

.cc-debug .cc-say.d-none {
    border: 2px dashed #8e24aa !important;
    padding: 2px !important;
}

.cc-debug .cc-grd.d-none {
    border: 2px dashed #b19725 !important;
    padding: 2px !important;
}

.cc-debug .cc-table {
    background: #fff !important;
    padding: 5px;
    border: 5px solid #b19725 !important;
    min-height: 20px !;
    display: block !important;
}

.cc-debug hr {
    height: 20px !important;
    background: #567d2e !important
}


/* MODO DESENVOLVEDOR */

[name='cc-body'].cc-modo-dev .cc-draggable {
    outline: 2px dashed #1565c0 !important;
    position: relative !important;
    cursor: context-menu;
}

[name='cc-body'].cc-modo-dev .cc-draggable:hover {
    outline: 2px solid #1565c0 !important;
    background-color: rgba(21, 101, 192, 0.04) !important;
}

[name='cc-body'].cc-modo-dev .cc-draggable .cc-drag-grip {
    transition: transform 0.12s ease, opacity 0.12s ease, box-shadow 0.12s ease;
}

[name='cc-body'].cc-modo-dev .cc-fme-collapse-titulo .cc-drag-grip-fme {
    left: auto !important;
    right: 8px;
    top: 50% !important;
    transform: translateY(-50%);
}

[name='cc-body'].cc-modo-dev .cc-fme-collapse-titulo {
    padding-right: 34px;
}

[name='cc-body'].cc-modo-dev .cc-draggable:hover .cc-drag-grip,
[name='cc-body'].cc-modo-dev .cc-draggable.cc-dev-selected .cc-drag-grip {
    opacity: 1 !important;
    transform: scale(1.06);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.24) !important;
}

[name='cc-body'].cc-modo-dev .cc-btn-col.cc-draggable,
[name='cc-body'].cc-modo-dev .cc-grd.cc-draggable,
[name='cc-body'].cc-modo-dev [data-obj-tp='fme'].cc-draggable,
[name='cc-body'].cc-modo-dev [data-obj-tp='fld'].cc-draggable,
[name='cc-body'].cc-modo-dev [data-obj-tp='frm'].cc-draggable {
    padding-top: 6px;
}

[name='cc-body'].cc-modo-dev .cc-draggable:hover .cc-fme-collapse-titulo .cc-drag-grip-fme,
[name='cc-body'].cc-modo-dev .cc-draggable.cc-dev-selected .cc-fme-collapse-titulo .cc-drag-grip-fme {
    transform: translateY(-50%) scale(1.06);
}

[name='cc-body'].cc-modo-dev .cc-draggable.cc-dev-selected {
    outline: 2px solid #e53935 !important;
    background-color: rgba(229, 57, 53, 0.08) !important;
}

.cc-dev-sel-badge {
    position: absolute;
    top: 2px;
    right: 22px;
    z-index: 6;
    color: #e53935;
    font-size: 14px;
    pointer-events: none;
    line-height: 1;
}

.cc-dev-drop-fme {
    outline: 2px solid #1565c0 !important;
    outline-offset: 2px;
    background: linear-gradient(180deg, rgba(21, 101, 192, 0.08) 0%, rgba(21, 101, 192, 0.02) 100%) !important;
}

.cc-dev-drop-target {
    position: relative !important;
    box-shadow: inset 0 0 0 2px rgba(21, 101, 192, 0.2);
    background-color: rgba(21, 101, 192, 0.04) !important;
}

.cc-dev-drop-target::before {
    content: "";
    position: absolute;
    left: -2px;
    right: -2px;
    height: 0;
    border-top: 3px solid #1565c0;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.85);
    pointer-events: none;
    z-index: 14;
}

.cc-dev-drop-target.cc-dev-drop-before::before {
    top: -4px;
}

.cc-dev-drop-target.cc-dev-drop-after::before {
    bottom: -4px;
}

.cc-dev-drop-target::after,
.cc-dev-drop-fme::after {
    content: attr(data-drop-title) "  " attr(data-drop-subtitle);
    position: absolute;
    left: 8px;
    right: 8px;
    padding: 6px 10px;
    border-radius: 6px;
    background: rgba(13, 71, 161, 0.94);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.02em;
    pointer-events: none;
    z-index: 15;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    word-break: break-word;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.cc-dev-drop-target.cc-dev-drop-before::after {
    top: -28px;
}

.cc-dev-drop-target.cc-dev-drop-after::after {
    bottom: -28px;
}

.cc-dev-drop-fme::after {
    top: 8px;
}

.cc-dev-drop-preview {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border: 2px solid #1565c0 !important;
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(21, 101, 192, 0.16) 0%, rgba(21, 101, 192, 0.08) 100%) !important;
    box-sizing: border-box;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45);
}

.cc-dev-drop-preview-horizontal {
    display: inline-flex !important;
    vertical-align: top;
}

.cc-dev-drop-preview-vertical {
    display: flex !important;
}

.cc-dev-drop-preview-badge {
    position: absolute;
    top: 8px;
    right: 10px;
    min-width: 24px;
    height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    background: #0d47a1;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 24px;
    text-align: center;
}

.cc-dev-drop-preview-title {
    display: block;
    padding-right: 34px;
    color: #0d47a1;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.cc-dev-drop-preview-subtitle {
    display: block;
    color: #12344d;
    font-size: 12px;
    line-height: 1.3;
}


/* HIDE/SHOW */

.cc-hidden-show .cc-grd.d-none {
    display: inline-block !important;
}

.cc-hidden-show .cc-btn.d-none {
    display: inline-block !important;
}

.cc-hidden-show .cc-fme.d-none {
    display: inline-block !important;
}

.cc-hidden-show .cc-inp.d-none {
    display: inline-block !important;
}

.cc-hidden-show .cc-inp.d-none {
    display: inline-block !important;
}

.cc-hidden-show .cc-say.d-none {
    display: inline-block !important;
}

.cc-hidden-show .d-none .d-none-none {
    display: none !important;
}


/* CONTEXT MENU */

.context-menu-root {
    z-index: 1000 !important;
}


/* IDE COLORS */

a[data-grd-inp-val="FRM"],
a[data-grd-inp-val="Frm"],
a[data-grd-inp-val="frm"] {
    background: #6f42c1 !important;
    color: #fff;
}

a[data-grd-inp-val="FME"],
a[data-grd-inp-val="Fme"],
a[data-grd-inp-val="fme"] {
    background: #105888 !important;
    color: #fff;
}

a[data-grd-inp-val="MNU"],
a[data-grd-inp-val="Mnu"],
a[data-grd-inp-val="mnu"] {
    background: #e83e8c !important;
    color: #fff;
}

a[data-grd-inp-val="FLD"],
a[data-grd-inp-val="Fld"],
a[data-grd-inp-val="fld"] {
    background: #17a2b8 !important;
    color: #fff;
}

a[data-grd-inp-val="INP"],
a[data-grd-inp-val="Inp"],
a[data-grd-inp-val="inp"] {
    background: #ffc107 !important;
    color: #000;
}

a[data-grd-inp-val="BTN"],
a[data-grd-inp-val="Btn"],
a[data-grd-inp-val="btn"] {
    background: #28a745 !important;
    color: #fff;
}

a[data-grd-inp-val="GRD"],
a[data-grd-inp-val="Grd"],
a[data-grd-inp-val="grd"] {
    background: #dc3545 !important;
    color: #fff;
}

a[data-grd-inp-val="HTM"],
a[data-grd-inp-val="Htm"],
a[data-grd-inp-val="htm"] {
    background: #fd7e14 !important;
    color: #fff;
}

a[data-grd-inp-val="TAB"],
a[data-grd-inp-val="Tab"],
a[data-grd-inp-val="tab"] {
    background: #fd7e14 !important;
    color: #fff;
}

a[data-grd-inp-val="COL"],
a[data-grd-inp-val="Col"],
a[data-grd-inp-val="col."] {
    background: #004c4c !important;
    color: #fff;
}

a[data-grd-inp-val="FRM"],
a[data-grd-inp-val="Frm"],
a[data-grd-inp-val="frm"],
a[data-grd-inp-val="FME"],
a[data-grd-inp-val="Fme"],
a[data-grd-inp-val="fme"],
a[data-grd-inp-val="MNU"],
a[data-grd-inp-val="Mnu"],
a[data-grd-inp-val="mnu"],
a[data-grd-inp-val="FLD"],
a[data-grd-inp-val="Fld"],
a[data-grd-inp-val="fld"],
a[data-grd-inp-val="INP"],
a[data-grd-inp-val="Inp"],
a[data-grd-inp-val="inp"],
a[data-grd-inp-val="BTN"],
a[data-grd-inp-val="Btn"],
a[data-grd-inp-val="btn"],
a[data-grd-inp-val="GRD"],
a[data-grd-inp-val="Grd"],
a[data-grd-inp-val="grd"],
a[data-grd-inp-val="HTM"],
a[data-grd-inp-val="Htm"],
a[data-grd-inp-val="htm"],
a[data-grd-inp-val="TAB"],
a[data-grd-inp-val="Tab"],
a[data-grd-inp-val="tab"],
a[data-grd-inp-val="COL"],
a[data-grd-inp-val="Col"],
a[data-grd-inp-val="col"] {
    padding: 4px;
    font-size: 11px;
}


/* EDITOR */

#cc-ace-editor {
    min-height: 300px;
    height: 92.5%;
}

div.cc-ace-editor-fullscreen {
    position: fixed;
    top: 1.5%;
    left: 1.5%;
    width: 97%;
    height: 97%;
    z-index: 10;
    box-shadow: rgba(0, 0, 0, .4) 0 0 0 100px;
    padding: 10px;
    background: #fff;
}

/* Fullscreen override — always tall */
div.cc-ace-editor-fullscreen #cc-ace-editor {
    min-height: 300px;
    height: 92.5%;
}

/* Busca wrapper collapsed state */
#cc-dev-ide-propriedades-busca-wrapper {
    transition: all .25s ease;
}

#cc-dev-ide-propriedades-busca-toggle {
    overflow: hidden;
    text-overflow: ellipsis;
}

#cc-dev-ide-propriedades-busca-toggle:hover {
    opacity: .85;
}


/* TABELA DE PROPRIEDADES */
/*
.cc-dev-ide-propriedades-btn-busca-obj {
    margin: 23px 0 0 -20px;
    width: 43px;
}
*/
.cc-dev-text-ellipsis {
    float: left;
    max-width: 100%;
    min-width: 300px;
    white-space: nowrap;
    overflow: auto;
    text-overflow: ellipsis;
}

.cc-tabs-dev .active a {
    background: #155fa0 !important;
    color: #fff !important;
}

.cc-dev-ide-propriedades-tabela td {
    font-size: 11px;
}

#cc-dev-ide-tabela-cadastrar-tabela-inputs td {
    margin: 0;
    padding: 2px
}

#cc-dev-ide-tabela-cadastrar-tabela-inputs input {
    margin: 0;
    padding: 4px;
    font-size: 11px !important
}

@media (min-width: 770px) {
    .btn-bar-menu {
        display: none !important;
    }
}
@media (max-width: 770px) {
    .btn-bar-menu[mnu_tp="2"] {
        display: none !important;
    }
}