
/* блок функций */

.flatbtn:hover {background-color:rgba(255,255,255,1);}
.flatbtn.on {background-position:50% -48px;}
.flatbtn.sel:hover {background-color:#62aae1;}
.flatbtn.sel {background-position:50% -24px; background-color:#589acc;}
.flatbtn {
    vertical-align:middle;
    display:inline-block;
    width:24px;
    height:24px;
    margin:2px;
    border-radius:3px;
    background:url() no-repeat 50% 0;
    cursor:pointer;
}
.flatbtn.iadd {background-image:url(../images/icons/add2.png);}
.flatbtn.ireload {background-image:url(../images/icons/reload.png);}
.flatbtn.imenu {background-image:url(../images/icons/menu.png);}
.flatbtn.isearch {background-image:url(../images/icons/search.png);}
.flatbtn.ifilter {background-image:url(../images/icons/filter.png);}
.flatbtn.empty {background-image:url(../images/icons/empty.png);}
.flatbtn.fbcustom {background-position:50% 50%;}

.block .tools_cont .title {
    position:absolute;
    left:0;
    top:0;
    right:170px;
    height:30px;
    color:#777;
    line-height:30px;
    padding:0 10px;
}
.block .tools_cont .tools button {
    margin-top:8px;
}
.block .tools_cont .tools {
    position:absolute;
    width:160px;
    padding:0 5px;
    top:0;
    right:0;
    height:30px;
    text-align:right;
}
.block .tools_cont {
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:30px;
}

/* блок поиска */
.block .tools_cont .search .flatbtn:hover,
.block .tools_cont .search .flatbtn {
    background-color:transparent;
    position:absolute;
    margin:1px 0 0 -28px;
}
.block .tools_cont .search input {
    width:100%;
    box-sizing:border-box;
}
.block .tools_cont .search {
    display:none;
    position:absolute;
    left:0;
    top:30px;
    right:0;
    height:30px;
}

/* режим с блоком поиска */
.block.search .tools_cont {height:60px;}
.block.search .data_cont {top:60px;}
.block.search .tools_cont .search {display:block;}

/* метки перемещения */
.move_target {
    position:absolute;
    display:none;
    left:5px;
    background:url(../images/face/mover.png) no-repeat;
    width:9px;
    height:13px;
    z-index:300;
    margin-top:-6px;
}
.move_info > div:first-child {border:none;}
.move_info > div > span * {display:none;}
.move_info > div {
    display:inline-block;
    vertical-align:middle;
    border-left:1px solid #9fc5e2;
    padding:0 5px;
}
.move_info {
    margin:15px 0 0 15px;
    position:absolute;
    display:none;
    background:#deedf7;
    border:1px solid #9fc5e2;
    border-radius:3px;
    box-shadow:1px 2px 2px rgba(0,0,0,0.4);
    padding:4px 8px;
    white-space:nowrap;
    overflow:hidden;
    max-width:300px;
    z-index:310;
}
.move_info.wrong > div {border-color:#900;}
.move_info.wrong {
    background:#d33;
    border-color:#900;
    color:white;
}
.move_info.hover > div {border-color:#385;}
.move_info.hover {
    background:#90e2c0;
    border-color:#385;
}

/* область данных */
.block.bt-treetable table {
    margin:10px 0;
}
.block.bt-treetable table td {
    height:32px;
    vertical-align:middle;
    padding-right:10px;
}
.block.bt-treetable table button {
    width:auto;
    height:28px;
}
.block.bt-treetable table .selectbox {
    vertical-align:middle;
}
.block.bt-treetable table input {
    width:80px;
    height:20px;
    vertical-align:middle;
}
.block i.treecell.close {background:url(../images/forms/tree-arrow-close.png) no-repeat 50% 50%;}
.block i.treecell.open {background:url(../images/forms/tree-arrow-open.png) no-repeat 50% 50%;}
.block i.treecell:hover {opacity:0.6;}
.block i.treecell {
    display:inline-block;
    vertical-align:middle;
    margin-right:5px;
    width:20px;
    height:20px;
    margin:0;
}
.block.bt-treetable .data_cont,
.block.bt-table .data {
    padding-top:29px;
}
.block .data {
    left:4px;
    bottom:0;
    top:0;
    position:absolute;
    z-index:0;
    box-sizing: border-box;
    overflow:hidden;
}
.block .data_cont {
    position:absolute;
    left:0;
    top:30px;
    right:0;
    bottom:0;
    overflow:hidden;
    background:white;
    border:1px solid #aaa;
    border-top:1px solid #999;
    border-radius:3px;
}

/* загрузка и ошибки */
.form .loader,
.form .error,
.block .loader,
.block .error {
    position:absolute;
    background:rgba(255,255,255,0.9) url(../images/face/loader.gif) no-repeat 50% 50%;
    left:1px;
    top:31px;
    right:1px;
    bottom:1px;
    border-radius:3px;
    text-align:center;
    display:none;
    z-index:200;
}

.form .loader,
.form .error {
    background-color:rgba(236,236,236,0.9);
    top:0;
}

.form .error > div > div.btns button,
.block .error > div > div.btns button {margin-bottom:5px;}
.form .error > div > div,
.block .error > div > div {margin:0 0 20px; position:static;}
.form .error > div,
.block .error > div {
    position:absolute;
    left:20%;
    right:20%;
    top:50%;
    display:inline-block;
    margin-top:-120px;
    background:url(../images/icons/ajax-error.png) no-repeat 50% 0;
    padding-top:60px;
}
.form .error {background:rgba(236,236,236,0.9)}
.block .error {background:rgba(255,255,255,0.9)}

/* заголовок списка */
.block .data_cont .title div.moving {
    background:#3a84bc;
    cursor:w-resize;
}
.block .data_cont .title i.moving {
    margin:0;
    top:0;
    height:1000px;
    width:2px;
    background:#3a84bc;
}
.block .data_cont .title > i {
    display:inline-block;
    width:8px;
    height:1000px;
    background:url(../images/forms/title-spliter.png) repeat-y 50% 50%;
    margin:2px -3px;
    vertical-align:middle;
    cursor:w-resize;
    position:absolute;
}
.block .data_cont .title div i {
    display: inline-block;
    width:12px;
    height:12px;
    background:url(../images/forms/sort-arrow.png) no-repeat -100% 50%;
    float:right;
    margin:6px 0 0 5px;
    border-radius: 50%;
}
.block .data_cont .title div:hover b {display: block;}
.block .data_cont .title div b.filter {background-color:#e00;}
.block .data_cont .title div b {
    background:#aaa url(../images/icons/settings.png) no-repeat 0 50%;
    width:16px;
    height:16px;
    display: none;
    position: absolute;
    top:4px;
    left:auto;
    right:2px;
    cursor: pointer;
    border-radius: 8px;
}
.block .data_cont .title div i.asc {background-position:0 50%;}
.block .data_cont .title div i.desc {background-position:100% 50%;}
.block .data_cont .title div span:hover {text-decoration: underline;}
.block .data_cont .title div span {cursor: pointer;}
.block .data_cont .title div {
    vertical-align:middle;
    padding:0 5px;
    display:inline-block;
    min-width:10px;
    overflow:hidden;
    color:white;
    position: relative;
}
.block .data_cont .title {
    white-space:nowrap;
    padding:0 8px;
    position:absolute;
    left:0px;
    right:0px;
    top:0px;
    height:26px;
    line-height:26px;
    background:#aaa;
    border-radius:2px 2px 0 0;
    z-index:9;
}

.block .data_cont .inlineform .field.hidden {display: none;}
.block .data_cont .inlineform .field > .left {display: none;}
.block .data_cont .inlineform .field > .right .auto {
    min-width: 0;
    font-size: 11px;
    padding: 0 3px;
    height: 15px;
    display: inline-block;
    vertical-align: top;
    border-radius: 3px;
}
.block .data_cont .inlineform .field > .right {
    position: absolute;
    right:0;
    top:-20px;
}
.block .data_cont .inlineform .field {
    display: block;
    vertical-align: top;
    position: relative;
    width:100%;
    height:25px;
}
.block .data_cont .inlineform u.input > * {
    width:100%; height:100%;
    font-size:16px;
    box-sizing: border-box;
}
.block .data_cont .inlineform u.input {
    position:absolute;
    left:1px;
    right:1px;
    top:0;
    bottom:0;
}
.block .data_cont .inlineform {
    position: absolute;
    display: none;
    top:0; left:0; right:0;
    padding:3px;
    background:#9fc5e2;
    border-radius: 3px;
    margin:-2px 0 0 -1px;
    z-index:100;
}


/* список */
.line:hover {background:#deedf7;}
.line.selected {background:#9fc5e2;}
.line.datatitle:hover,
.line.datatitle {
    border-bottom: 1px solid #ddd;
    background:#ddd !important;
    padding-bottom: 0px;
    font-weight: bold;
    font-size:90%;
    padding-left:12px;
    cursor: auto;
}
.ch.line:hover {background:#deedf7;}
.ch.line.selected {background:#9fc5e2;}
.ch.line {background:#eee;}

.block.bt-treetable .line.datatitle,
.block.bt-table .line.datatitle {
    font-size:100%;
    font-weight: normal;
    padding-left:5px;
}
.line {
    white-space:nowrap;
    padding:0 5px;
    border-radius:3px;
    cursor:pointer;
}
.line > div > span {
    overflow:hidden;
    display: block;
}
.line > div {
    padding:0 5px;
    white-spac1e:normal;
    display:inline-block;
    line-heig1ht:1.4em;
    min-width:10px;
    vertical-align:middle;
    position: relative;
}

.line.loading {text-align:center;}
.line.loading > span {
    display:inline-block;
    width:20%;
    min-width:50px;
    height:2px;
    border-radius:2px;
    background:#eee url(../images/face/loader-line.gif) repeat 0 50%;
    border-bottom:1px solid #eee;
}
.line.ffaddbtn .inlineform {margin-top:-3px;min-height:25px;}
.line.ffaddbtn .inlineform > .field {position:absolute;}
.line.ffaddbtn {position: relative;}
.line.ffaddbtn img {
    vertical-align: middle;
}

span.progress span {
    border-radius:4px;
    background:#9fc5e2;
    min-height:5px;
    display:block;
    font-size:12px;
    width:100%;
}
span.progress.begin {border-color:#ef4f40;}
span.progress.complete {border-color:#3eaa3e;}
span.progress.complete span {background:#39cd47;}
span.progress {
    display:block;
    margin:0 3px;
    border-radius:3px;
    border:1px solid #ddd;
    padding:1px;
    background:white;
}

.line > div.actions.right {float:right; margin-top:3px;}
.line > div.actions {text-align:right;}
.line > div.actions > span.add {background-image:url(../images/icons/add.png);}
.line > div.actions > span.addsub {background-image:url(../images/icons/add.png);}
.line > div.actions > span.edit {background-image:url(../images/icons/edit.png);}
.line > div.actions > span.delete {background-image:url(../images/icons/delete.png);}
.line > div.actions > span.content {background-image:url(../images/icons/content.png); width:22px;}
.line > div.actions > span.calculate {background-image:url(../images/icons/calculate.png);}
.line > div.actions > span.test {background-image:url(../images/icons/test.png);}
.line > div.actions > span.fillpages {background-image:url(../images/icons/fillpages.png);}
.line > div.actions > span.take {background-image:url(../images/icons/take.png);}
.line > div.actions > span.payments {background-image:url(../../images/payments.png);}
.line > div.actions > span.email {background-image:url(../../images/email.png);}
.line > div.actions > span.table {background-image:url(../../images/table.png);}
.line > div.actions > span.graph {background-image:url(../../images/graph.png);}
.line > div.actions > span.excel {background-image:url(../../images/excel.png);}
.line > div.actions > span:hover {
    opacity:0.8;
}
.line > div.actions > span {
    cursor:pointer;
    display:inline-block;
    width:18px;
    height:18px;
    background:url(../images/icons/warning.png) no-repeat 50% 50%;
    transition:opacity 200ms;
    vertical-align:middle;
}

.line div.fast:hover {text-decoration: underline;}
.line div.fast {cursor: text; overflow: visible;}
.line div.fast > span {min-width:15px; min-height:15px;}

.line div.int {text-align:right;}
.line div.int.tree {text-align:left;}
.line div.bool {text-align:center;}
.line i.bool-,
.line i.bool-yes {
    vertical-align:middle;
    display:inline-block;
    width:14px;
    height:14px;
    border-radius:3px;
    border:1px solid #aaa;
    background:#fff;
    line-height:16px;
}
.line i.bool-yes {
    background:#fff url(../images/icons/yes.png) no-repeat 50% 50%;
}
.line i.icon {
    display:inline-block;
    width:30px;
    height:22px;
    vertical-align: middle;
    background:url() no-repeat 0% 50%;
}
.line.selected:hover div > b {
    display: block;
}
.line div > b {
    background:white url(../images/icons/settings.png) no-repeat 100% 50%;
    width:16px;
    height:16px;
    display: none;
    position: absolute;
    top:2px;
    left:auto;
    right:2px;
    cursor: pointer;
    border-radius: 8px;
}

/*  Скролл */
.d_scroll.disabled div:hover,
.d_scroll.disabled div {
    background:#eee;
    border-color:#eee;
    margin-top:0;
    display:none;
}
.d_scroll.disabled {
    border-color:#fff;
}
.d_scroll div:hover {
    background-color:#6ca6d2;
}
.d_scroll div {
    position:absolute;
    top:0;
    height:30%;
    bottom:auto;
    width:10px;
    border-right:1px solid #3a84bc;
    margin:1px 0 0 1px;
    background:#589acc url(../images/forms/vscroll.png) no-repeat 50% 50%;
    border-radius:4px;
    cursor:pointer;
}
.d_scroll {
    position:absolute;
    display:block;
    border-left:1px solid #ccc;
    background:#f4f4f4;
    width:13px;
    right:0;
    top:0;
    bottom:0;
    border-radius:0 3px 3px 0;
    z-index:10;
}

.d_scroll.horis div {
    width:30%;
    height:10px;
    border:none;
    border-bottom:1px solid #3a84bc;
    background-image:url(../images/forms/hscroll.png);
}
.d_scroll.horis {
    left:0;
    right:14px;
    top:auto;
    height:13px;
    width:auto;
    border-radius:0 0 0 3px;
    border:none;
    border-top:1px solid #ccc;
}
.d_scroll.horis.disabled {
    border-color:#fff;
}
