dhtmlx-gantt
Version:
An open source JavaScript Gantt chart that helps you illustrate a project schedule in a nice-looking chart.
1,497 lines (1,492 loc) • 64.4 kB
CSS
/*
@license
dhtmlxGantt v.7.1.12 Standard
This version of dhtmlxGantt is distributed under GPL 2.0 license and can be legally used in GPL projects.
To use dhtmlxGantt in non-GPL projects (and get Pro version of the product), please obtain Commercial/Enterprise or Ultimate license on our site https://dhtmlx.com/docs/products/dhtmlxGantt/#licensing or contact us at sales@dhtmlx.com
(c) XB Software Ltd.
*/
.buttonBg {
background: #fff;
}
/*lighten(@alterColor,7%)*/
/* colors for items with inline styles assigned (task.color, link.color)*/
.gantt_grid {
background-color: #d6d6d6;
}
.gantt_grid_scale {
background-color: #4f4f4f;
background-size: 5px 5px;
background-size: 4px 4px;
background-position: 0px 0px, 2px 2px;
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
color: #e1e1e1;
font-size: 14px;
}
.gantt_grid_scale .gantt_grid_head_cell {
border-top: none !important;
border-right: 1px solid #4f4f4f !important;
border-left: 1px solid #5b5b5b !important;
}
.gantt_popup_title {
background-color: #4f4f4f;
background-size: 5px 5px;
background-size: 4px 4px;
background-position: 0px 0px, 2px 2px;
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
color: #e1e1e1;
font-size: 14px;
}
.gantt_grid_data .gantt_row,
.gantt_grid_data .gantt_row.odd {
background-color: #dbdbdb;
border-top: 1px solid #f6f6f6;
border-bottom: 1px solid #bababa;
}
.gantt_grid_data .gantt_row .gantt_cell,
.gantt_grid_data .gantt_row.odd .gantt_cell {
border-right: none;
}
.gridHoverStyle {
border-top: 1px solid #ededed;
background-color: #ededed;
}
.gridSelection {
background-color: #FFF3A1;
border-top-color: #fff087;
}
.timelineSelection {
background-color: #FFF3A1;
}
/*Tree icons*/
.gantt_cell .gantt_tree_icon.gantt_folder_open {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAPCAYAAAACsSQRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODhBMDIwQzhDRUI3MTFFMjg4RUJDNUMzQkZEREM2RDIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODhBMDIwQzlDRUI3MTFFMjg4RUJDNUMzQkZEREM2RDIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4OEEwMjBDNkNFQjcxMUUyODhFQkM1QzNCRkREQzZEMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4OEEwMjBDN0NFQjcxMUUyODhFQkM1QzNCRkREQzZEMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PntuzoIAAACySURBVHjaYmTAAjo6Ov4z4AAVFRWM6GJM6ALt7e0OUCYjFowsDwfIEjDbDRgZGSf8//8fUzEj4wGgeAGQeQFJ+CIj0IALQEl9BjIB0NADTJQYAHWdAxMDFQBVDGEB+ukgxYYAcQNSzCCnh4NY0o89VkOAAbMfV5gBNR0AytuDXAs01AEUxbhcwoAj1c4HaUTi9wMNwWnb/0ERO0xA/z6k0IyP4NgBGpRApgEfgHgBQIABAAcyQOF3e6FiAAAAAElFTkSuQmCC);
}
.gantt_cell .gantt_tree_icon.gantt_folder_closed {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAPCAYAAAACsSQRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODhBMDIwQzhDRUI3MTFFMjg4RUJDNUMzQkZEREM2RDIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODhBMDIwQzlDRUI3MTFFMjg4RUJDNUMzQkZEREM2RDIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4OEEwMjBDNkNFQjcxMUUyODhFQkM1QzNCRkREQzZEMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4OEEwMjBDN0NFQjcxMUUyODhFQkM1QzNCRkREQzZEMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PntuzoIAAACySURBVHjaYmTAAjo6Ov4z4AAVFRWM6GJM6ALt7e0OUCYjFowsDwfIEjDbDRgZGSf8//8fUzEj4wGgeAGQeQFJ+CIj0IALQEl9BjIB0NADTJQYAHWdAxMDFQBVDGEB+ukgxYYAcQNSzCCnh4NY0o89VkOAAbMfV5gBNR0AytuDXAs01AEUxbhcwoAj1c4HaUTi9wMNwWnb/0ERO0xA/z6k0IyP4NgBGpRApgEfgHgBQIABAAcyQOF3e6FiAAAAAElFTkSuQmCC);
}
.gantt_cell .gantt_tree_icon.gantt_file {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RkQ2NjJFM0ZDRUI3MTFFMkFGNzc4M0YxNUM2NzkwMTIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RkQ2NjJFNDBDRUI3MTFFMkFGNzc4M0YxNUM2NzkwMTIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGRDY2MkUzRENFQjcxMUUyQUY3NzgzRjE1QzY3OTAxMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGRDY2MkUzRUNFQjcxMUUyQUY3NzgzRjE1QzY3OTAxMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PhnnqLUAAAExSURBVHjanFPtUcMwDI28AB0BJkg6AWEEJqAbxPxLJkh+phuUDdiAbtAwAYxAJ0jf60k51ecWDt3pZFtPn5akSKjv+3uIBlyLSMW3eZ4niD1423Xdt8dLYjzCqCluEJyNcPJq9+CMJzMGaAtet20rZJ7Bb+eIIhHYw0UGLvIRwBoRplx04CrgWModgwAXhTXj8Usjr73xMAwzJbNInBwU/8ASoqV9LbInYqwc2tJBrZdd8XcaVT4GpFOa52topL1Ks9CGVuGXL/vU40fqZPlGA7E5GX1NvQ7U4sSw1AWdMNIm07CfxIn1K6rcB2sI5yCXhXPyjPO7fuOLNfNikAAi+OnWILEUYFfLICWjXGptO12cyRk20G+sduiq/y7TOXJ2G906R13n0n0nmz2m63wSYAB0aMIyVTQbywAAAABJRU5ErkJggg==);
}
/*
Gantt part
*/
.chartHeaderBg {
background-color: #dbdbdb;
}
.gantt_task .gantt_task_scale .gantt_scale_cell {
border-left: 1px solid #f6f6f6;
border-right: 1px solid #bababa;
color: #494949;
font-size: 14px;
}
/*
Tasks
*/
.taskProgressStyle {
border-right: 1px solid #1cb3fb;
box-shadow: -1px 0px 0 1px #04a1eb inset;
}
.gantt_task_line {
background-size: 4px 4px;
background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient(0deg, transparent, transparent);
}
.gantt_task_line .gantt_task_content {
text-align: left;
font-weight: bold;
padding: 0 8px;
box-sizing: border-box;
}
.gantt_task_link .gantt_link_arrow_right {
border-width: 5px 5px 5px 5px;
margin-top: -1px;
}
.gantt_task_link .gantt_link_arrow_left {
border-width: 5px 5px 5px 5px;
margin-left: -3px;
margin-top: -2px;
}
.gantt_task_link .gantt_link_arrow_up {
border-width: 5px 5px 5px 5px;
}
.gantt_task_link .gantt_link_arrow_down {
border-width: 5px 5px 5px 5px;
}
.gantt_task_line .gantt_task_progress_drag {
bottom: -4px;
height: 10px;
margin-left: -8px;
width: 16px;
}
/*
project highlight
*/
.gantt_row.gantt_project,
.gantt_row.odd.gantt_project {
background-color: #edffef;
}
.gantt_task_row.gantt_project,
.gantt_task_row.odd.gantt_project {
background-color: #f5fff6;
}
.gantt_task_line.gantt_project {
background-color: #65c16f;
border: 1px solid #3c9445;
}
.gantt_task_line.gantt_project .gantt_task_progress {
background-color: #46ad51;
border-right: 1px solid #5abc65;
box-shadow: -1px 0px 0 1px #45a94f inset;
}
/*
milestone
*/
/*
lightbox
*/
.gantt_cal_light {
background-color: #fff;
border: none !important;
}
.gantt_cal_light .gantt_cal_lsection {
color: #959595;
}
.gantt_cal_light .gantt_cal_larea {
border-bottom: none;
}
.gantt_cal_light .gantt_cal_ltitle {
background-color: #4f4f4f;
background-size: 5px 5px;
background-size: 4px 4px;
background-position: 0px 0px, 2px 2px;
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
font-size: 14px;
color: #e1e1e1;
position: relative;
padding-top: 12px;
padding-bottom: 12px;
font-weight: normal;
}
.gantt_cal_light .gantt_cal_ltitle .gantt_title {
font-size: 13px;
}
.gantt_cal_light .gantt_btn_set {
margin: 5px 10px;
}
.buttonBg {
background: #fff;
}
.gantt_btn_set.gantt_save_btn_set {
background: #46ad51;
text-shadow: 0 -1px 0 #307738;
color: #fff;
}
.gantt_btn_set.gantt_delete_btn_set {
margin-left: 0;
text-shadow: 0 -1px 0 #6F6F6F;
background: #ec8e00;
text-shadow: 0 -1px 0 #aa6600;
color: #fff;
}
.gantt_delete_btn {
margin-top: 2px;
width: 20px;
}
.gantt_cal_light_wide {
padding-left: 0 !important;
padding-right: 0 !important;
}
.gantt_cal_light_wide .gantt_cal_larea {
border-left: none !important;
border-right: none !important;
}
.gantt_cal_ltitle .gantt_cancel_btn {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAMCAYAAABbayygAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QYLEgAjh/DRnAAAAMdJREFUGNN1kcsNwjAQRF9iCkgJdJCUkBJQpDkDFUALdBAqAM6WQglQAlxzSglQgAUH1tIKgS9ezzztz0Vd18QYW0lXfpzsFeM49sAGOEpaf0FHYAnsS6evYoy9g3qDAB6Flb4BtYk568Huu6RmBhBCaFNKV4MPrso9hNAClABd1z2ABfB00BNYmEf5NeTrT/wBh2GogDNQOa8CzuZ9QOuvccPkgZqU0gXA7xFgL2nr1pP1ne/xlCEAi0/5nfc4lzT9+cK5pOkNX8hRT8hMyVwAAAAASUVORK5CYII=);
width: 30px;
top: 0px;
right: 0;
background-position: 6px 12px;
background-repeat: no-repeat;
position: absolute;
height: 100%;
}
/*
Message
*/
.gantt_popup_button.gantt_ok_button {
background: #46ad51;
text-shadow: 0 -1px 0 #307738;
color: #fff;
font-weight: bold;
}
.gantt_popup_button.gantt_cancel_button {
font-weight: bold;
}
.gantt_popup_shadow {
box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.07);
}
/*
Quick info
*/
.gantt_qi_big_icon.icon_edit {
color: #454544;
}
.gantt_qi_big_icon.icon_delete {
text-shadow: 0 -1px 0 #6F6F6F;
background: #ec8e00;
text-shadow: 0 -1px 0 #aa6600;
color: #fff;
font-weight: bold;
}
/*
links dnd
*/
.gantt_tooltip {
box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.07);
background-color: white;
border-left: 1px solid rgba(0, 0, 0, 0.07);
border-top: 1px solid rgba(0, 0, 0, 0.07);
font-family: "Arial";
font-size: 8pt;
color: #494949;
}
.gantt_container {
background-color: #fff;
font-family: "Arial";
font-size: 13px;
border: 1px solid #bababa;
position: relative;
white-space: nowrap;
overflow-x: hidden;
overflow-y: hidden;
}
.gantt_touch_active {
overscroll-behavior: none;
}
.gantt_task_scroll {
overflow-x: scroll;
}
.gantt_task,
.gantt_grid {
position: relative;
overflow-x: hidden;
overflow-y: hidden;
display: inline-block;
vertical-align: top;
}
.gantt_grid_scale,
.gantt_task_scale {
color: #494949;
font-size: 12px;
border-bottom: 1px solid #bababa;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.gantt_grid_scale {
background-color: #4f4f4f;
background-size: 5px 5px;
background-size: 4px 4px;
background-position: 0px 0px, 2px 2px;
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05)), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%, rgba(255, 255, 255, 0.05));
color: #e1e1e1;
font-size: 14px;
}
.gantt_task_scale {
background-color: #dbdbdb;
}
.gantt_task_vscroll {
background-color: #dbdbdb;
}
.gantt_scale_line {
box-sizing: border-box;
-moz-box-sizing: border-box;
border-top: 1px solid #bababa;
}
.gantt_scale_line:first-child {
border-top: none;
}
.gantt_grid_head_cell {
display: inline-block;
vertical-align: top;
border-right: 1px solid #bababa;
text-align: center;
position: relative;
cursor: default;
height: 100%;
box-sizing: border-box;
-moz-box-sizing: border-box;
line-height: 33px;
-moz-user-select: -moz-none;
-webkit-user-select: none;
user-select: none;
overflow: hidden;
}
.gantt_scale_line {
clear: both;
}
.gantt_grid_data {
width: 100%;
overflow: hidden;
position: relative;
}
.gantt_row {
position: relative;
-webkit-user-select: none;
-moz-user-select: none;
-moz-user-select: -moz-none;
}
.gantt_add,
.gantt_grid_head_add {
width: 100%;
height: 100%;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QYHCygkHejN0gAAAD1JREFUOMtjtN15mYESwIJLwvHo6v/I/P3WoYzY1DExUAiGgQGMtjsvYwQYsWC/dSjjcAmD0YREo0AkFgAASgkTQxnJ6ggAAAAASUVORK5CYII=);
background-position: center center;
background-repeat: no-repeat;
cursor: pointer;
position: relative;
-moz-opacity: 0.3;
opacity: 0.3;
}
.gantt_grid_head_cell.gantt_grid_head_add {
-moz-opacity: 0.6;
opacity: 0.6;
top: 0;
}
.gantt_grid_head_cell.gantt_grid_head_add:hover {
-moz-opacity: 1;
opacity: 1;
}
.gantt_grid_data .gantt_row:hover,
.gantt_grid_data .gantt_row.odd:hover {
border-top: 1px solid #ededed;
background-color: #ededed;
}
.gantt_grid_data .gantt_row:hover .gantt_add,
.gantt_grid_data .gantt_row.odd:hover .gantt_add {
-moz-opacity: 1;
opacity: 1;
}
.gantt_task_row,
.gantt_row {
border-bottom: 1px solid #ebebeb;
}
.gantt_row,
.gantt_task_row {
background-color: #fff;
}
.gantt_row.odd,
.gantt_task_row.odd {
background-color: #fff;
}
.gantt_row,
.gantt_cell,
.gantt_task_row,
.gantt_task_cell,
.gantt_grid_head_cell,
.gantt_scale_cell {
box-sizing: border-box;
-moz-box-sizing: border-box;
}
.gantt_grid_head_cell,
.gantt_scale_cell {
line-height: inherit;
}
.gantt_grid_scale .gantt_grid_column_resize_wrap {
cursor: col-resize;
position: absolute;
width: 13px;
margin-left: -7px;
}
.gantt_grid_column_resize_wrap .gantt_grid_column_resize {
background-color: #bababa;
height: 100%;
width: 1px;
margin: 0 auto;
}
.gantt_task_grid_row_resize_wrap {
cursor: row-resize;
position: absolute;
height: 13px;
margin-top: -7px;
left: 0px;
width: 100%;
}
.gantt_task_grid_row_resize_wrap .gantt_task_grid_row_resize {
background-color: #ebebeb;
top: 6px;
height: 1px;
width: 100%;
margin: 0 auto;
position: relative;
}
.gantt_drag_marker.gantt_grid_resize_area,
.gantt_drag_marker.gantt_row_grid_resize_area {
background-color: rgba(231, 231, 231, 0.5);
height: 100%;
width: 100%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.gantt_drag_marker.gantt_grid_resize_area {
border-left: 1px solid #bababa;
border-right: 1px solid #bababa;
}
.gantt_drag_marker.gantt_row_grid_resize_area {
border-top: 1px solid #bababa;
border-bottom: 1px solid #bababa;
pointer-events: none;
}
.gantt_row {
display: flex;
}
.gantt_row > div {
flex-shrink: 0;
flex-grow: 0;
}
.gantt_cell {
vertical-align: top;
border-right: 1px solid #ebebeb;
padding-left: 6px;
padding-right: 6px;
height: 100%;
overflow: hidden;
white-space: nowrap;
font-size: 13px;
}
.gantt_cell_tree {
display: flex;
flex-wrap: nowrap;
}
.gantt_grid_scale .gantt_last_cell,
.gantt_grid_data .gantt_last_cell,
.gantt_task .gantt_task_scale .gantt_scale_cell.gantt_last_cell,
.gantt_task_bg .gantt_last_cell {
border-right-width: 0px;
}
.gantt_task .gantt_task_scale .gantt_scale_cell.gantt_last_cell {
border-right-width: 1px;
}
.gantt_task_bg {
overflow: hidden;
}
.gantt_scale_cell {
display: inline-block;
white-space: nowrap;
overflow: hidden;
border-right: 1px solid #bababa;
text-align: center;
height: 100%;
}
.gantt_task_cell {
display: inline-block;
height: 100%;
border-right: 1px solid #ebebeb;
}
.gantt_layout_cell.gantt_ver_scroll {
width: 0px;
background-color: transparent;
height: 1px;
overflow-x: hidden;
overflow-y: scroll;
position: absolute;
right: 0px;
z-index: 1;
}
.gantt_ver_scroll > div {
width: 1px;
height: 1px;
}
.gantt_hor_scroll {
height: 0px;
background-color: transparent;
width: 100%;
clear: both;
overflow-x: scroll;
overflow-y: hidden;
}
.gantt_layout_cell .gantt_hor_scroll {
position: absolute;
}
.gantt_hor_scroll > div {
width: 5000px;
height: 1px;
}
.gantt_tree_indent,
.gantt_tree_icon {
flex-grow: 0;
flex-shrink: 0;
}
.gantt_tree_indent {
width: 15px;
height: 100%;
}
.gantt_tree_content,
.gantt_tree_icon {
vertical-align: top;
}
.gantt_tree_icon {
width: 28px;
height: 100%;
background-repeat: no-repeat;
background-position: center center;
}
.gantt_tree_content {
height: 100%;
white-space: nowrap;
min-width: 0;
}
.gantt_tree_icon.gantt_open {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAW0lEQVQ4T2NkoBJgpJI5DEPEoGnTpv0n5OWsrCwU32B4DWQIuiJshqKro7tBIK+iWEquiyg2CFugg102YC6CRRjFXsOZnMj1GoaBBA2CBSTFKZuQAbjkB1/uBwBrVFUTxDarVwAAAABJRU5ErkJggg==);
width: 18px;
cursor: pointer;
}
.gantt_tree_icon.gantt_close {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAASElEQVQ4T2NkoBJgpJI5DEPEoGnTpv0n5OWsrCwU32B4DWQIuiJshqKrG8EGYQt0cHCMhhFqYiMrHcECkuKUTcgAXPKDL/cDAMbOURO+6QJ7AAAAAElFTkSuQmCC);
width: 18px;
cursor: pointer;
}
.gantt_tree_icon.gantt_blank {
width: 18px;
}
.gantt_tree_icon.gantt_folder_open {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAs0lEQVQ4T62T0Q2EIBBEpQlzuaaMsQoqooqLsSljbMLLmMxmUXBR4U+Qt7Mzi2sqLVeJ00SgEMKWAnvvzYLyAyHfT5sU2fXDJSwCAXK8MI0/UTkva7IIFJsg3NSwnKdFoKtAWOQ1CN7CEqeTotE5L7QyJhmBcklZM4ZgTiAr3iOU3kD93ppO5SkMjB1EeXdBWoSkRql3YeIRe+cGvktS056JR9wsmeBUkujCfNXWCPC8GugPqn5ii/hV+FoAAAAASUVORK5CYII=);
}
.gantt_tree_icon.gantt_folder_closed {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAfElEQVQ4T2NkoBJgpJI5DCgGTZ8+/T82gzMzMwlaCFcAM0RKQgyrI/0Dg/EahmIQyBB0DRvXr4W78tmLV1gtAbmYoEEgnciG4QpTogzCFyEwSyg2CBS2oCAZNQh3cA+hMAJ5AlcKxuVBlOgnNgVjMwyUrQjmamKLGaoZBAAOTFyLnFFW4wAAAABJRU5ErkJggg==);
}
.gantt_tree_icon.gantt_file {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAeElEQVQ4T2NkoBJgRDZn+vTp/wmZm5mZiaIHph7DICkJMUJmMfgHBmMYhtUgbAo3rl+L4lp0NUQbBPI2umuRDaPIIFAYwAyjv0HoMQALM5JdhG4QLMxGDcKdyIdoGIE89OzFK4KZF5Rl8EY/QROQFGA1iBQD0NUCAJVjcxO0naAQAAAAAElFTkSuQmCC);
}
.gantt_grid_head_cell .gantt_sort {
position: absolute;
right: 5px;
top: 8px;
width: 7px;
height: 13px;
background-repeat: no-repeat;
background-position: center center;
}
.gantt_grid_head_cell .gantt_sort.gantt_asc {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAANCAYAAABlyXS1AAAARUlEQVR42mNgQAL1/VP/M2ADIIntF2/9x1AAlrh0C47hCmA60DFYwX88gIFGwNDY5D8uDFbg7hvwHx2jmIBTAlkB0e4BAEjlaNtBWJPnAAAAAElFTkSuQmCC);
}
.gantt_grid_head_cell .gantt_sort.gantt_desc {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAANCAYAAABlyXS1AAAARUlEQVR4nGNgQAKGxib/GbABkIS7b8B/DAUwCRiGK0CXwFBAb1DfP/U/LszwHwi2X7qFgUEArBtdAVwCBmAKMCSQFSDzAWXXaOHsXeqkAAAAAElFTkSuQmCC);
}
.gantt_inserted,
.gantt_updated {
font-weight: bold;
}
.gantt_deleted {
text-decoration: line-through;
}
.gantt_invalid {
background-color: #FFE0E0;
}
.gantt_error {
color: red;
}
.gantt_status {
right: 1px;
padding: 5px 10px;
background: rgba(155, 155, 155, 0.1);
position: absolute;
top: 1px;
-webkit-transition: opacity 0.2s;
transition: opacity 0.2s;
opacity: 0;
}
.gantt_status.gantt_status_visible {
opacity: 1;
}
#gantt_ajax_dots span {
-webkit-transition: opacity 0.2s;
transition: opacity 0.2s;
background-repeat: no-repeat;
opacity: 0;
}
#gantt_ajax_dots span.gantt_dot_visible {
opacity: 1;
}
.gantt_column_drag_marker {
border: 1px solid #CECECE;
opacity: 0.8;
}
.gantt_grid_head_cell_dragged {
border: 1px solid #CECECE;
opacity: 0.3;
}
.gantt_grid_target_marker {
position: absolute;
top: 0;
width: 2px;
height: 100%;
background-color: #FFA011;
transform: translateX(-1px);
}
.gantt_grid_target_marker::before,
.gantt_grid_target_marker::after {
display: block;
content: "";
position: absolute;
left: -5px;
width: 0px;
height: 0px;
border: 6px solid rgba(0, 0, 0, 0);
}
.gantt_grid_target_marker::before {
border-top-color: #FFA011;
}
.gantt_grid_target_marker::after {
bottom: 0;
border-bottom-color: #FFA011;
}
.gantt_message_area {
position: fixed;
right: 5px;
width: 250px;
z-index: 1000;
}
.gantt-info {
min-width: 120px;
padding: 4px 4px 4px 20px;
font-family: "Arial";
z-index: 10000;
margin: 5px;
margin-bottom: 10px;
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
-o-transition: all .5s ease;
transition: all .5s ease;
}
.gantt-info.hidden {
height: 0px;
padding: 0px;
border-width: 0px;
margin: 0px;
overflow: hidden;
}
.gantt_modal_box {
overflow: hidden;
display: inline-block;
min-width: 250px;
width: 250px;
text-align: center;
position: fixed;
z-index: 20000;
box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.07);
font-family: "Arial";
border-radius: 6px;
border: 1px solid #bababa;
background: #fff;
}
.gantt_popup_title {
border-top-left-radius: 6px;
border-top-right-radius: 6px;
border-width: 0px;
}
.gantt_button,
.gantt_popup_button {
border: 1px solid #bababa;
height: 30px;
line-height: 30px;
display: inline-block;
margin: 0 5px;
border-radius: 4px;
background: #fff;
}
.gantt-info,
.gantt_popup_button,
.gantt_button {
user-select: none;
-webkit-user-select: none;
-moz-user-select: -moz-none;
cursor: pointer;
}
.gantt_popup_text {
overflow: hidden;
}
.gantt_popup_controls {
border-radius: 6px;
padding: 10px;
}
.gantt_popup_button {
min-width: 100px;
}
div.dhx_modal_cover {
background-color: #000;
cursor: default;
filter: progid:DXImageTransform.Microsoft.Alpha(opacity=20);
opacity: 0.2;
position: fixed;
z-index: 19999;
left: 0px;
top: 0px;
width: 100%;
height: 100%;
border: none;
zoom: 1;
}
.gantt-info img,
.gantt_modal_box img {
float: left;
margin-right: 20px;
}
.gantt-alert-error,
.gantt-confirm-error {
border: 1px solid #ff0000;
}
/*Skin section*/
.gantt_button input,
.gantt_popup_button div {
border-radius: 4px;
font-size: 14px;
-moz-box-sizing: content-box;
box-sizing: content-box;
padding: 0px;
margin: 0px;
vertical-align: top;
}
.gantt_popup_title {
border-bottom: 1px solid #bababa;
height: 40px;
line-height: 40px;
font-size: 20px;
}
.gantt_popup_text {
margin: 15px 15px 5px 15px;
font-size: 14px;
color: #000;
min-height: 30px;
border-radius: 6px;
}
.gantt-info,
.gantt-error {
font-size: 14px;
color: #000;
box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.07);
padding: 0px;
background-color: #FFFFFF;
border-radius: 3px;
border: 1px solid #FFFFFF;
}
.gantt-info div {
padding: 5px 10px 5px 10px;
background-color: #FFFFFF;
border-radius: 3px;
border: 1px solid #bababa;
}
.gantt-error {
background-color: #d81b1b;
border: 1px solid #ff3c3c;
}
.gantt-error div {
background-color: #d81b1b;
border: 1px solid #940000;
color: #FFFFFF;
}
.gantt-warning {
background-color: #F57C00;
border: 1px solid #ffa242;
}
.gantt-warning div {
background-color: #F57C00;
border: 1px solid #845030;
color: #FFFFFF;
}
.gantt_grid div,
.gantt_data_area div {
-ms-touch-action: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.gantt_data_area {
position: relative;
overflow-x: hidden;
overflow-y: hidden;
-moz-user-select: -moz-none;
-webkit-user-select: none;
user-select: none;
}
.gantt_links_area {
position: absolute;
left: 0px;
top: 0px;
}
.gantt_task_content,
.gantt_task_progress,
.gantt_side_content {
line-height: inherit;
overflow: hidden;
height: 100%;
}
.gantt_task_content {
font-size: 13px;
color: #fff;
width: 100%;
top: 0;
cursor: pointer;
position: absolute;
white-space: nowrap;
text-align: center;
}
.gantt_task_progress {
text-align: center;
z-index: 0;
background: #04a4f0;
border-right: 1px solid #1cb3fb;
box-shadow: -1px 0px 0 1px #04a1eb inset;
}
.gantt_task_progress_wrapper {
border-radius: inherit;
position: relative;
width: 100%;
height: 100%;
overflow: hidden;
}
.gantt_task_line {
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
position: absolute;
-moz-box-sizing: border-box;
box-sizing: border-box;
background-color: #17b2fb;
border: 1px solid #049ae1;
-webkit-user-select: none;
-moz-user-select: none;
-moz-user-select: -moz-none;
}
.gantt_task_line.gantt_drag_move div {
cursor: move;
}
.gantt_touch_move,
.gantt_touch_progress .gantt_touch_resize {
-moz-transform: scale(1.02, 1.1);
-o-transform: scale(1.02, 1.1);
-webkit-transform: scale(1.02, 1.1);
transform: scale(1.02, 1.1);
-moz-transform-origin: 50%;
-o-transform-origin: 50%;
-webkit-transform-origin: 50%;
transform-origin: 50%;
}
.gantt_touch_progress .gantt_task_progress_drag,
.gantt_touch_resize .gantt_task_drag {
-moz-transform: scaleY(1.3);
-o-transform: scaleY(1.3);
-webkit-transform: scaleY(1.3);
transform: scaleY(1.3);
-moz-transform-origin: 50%;
-o-transform-origin: 50%;
-webkit-transform-origin: 50%;
transform-origin: 50%;
}
.gantt_side_content {
position: absolute;
white-space: nowrap;
color: #6e6e6e;
top: 0;
font-size: 11px;
font-size: 12px;
}
.gantt_side_content.gantt_left {
right: 100%;
padding-right: 20px;
}
.gantt_side_content.gantt_right {
left: 100%;
padding-left: 20px;
}
.gantt_side_content.gantt_link_crossing {
bottom: 8.75px;
top: auto;
}
.gantt_task_link .gantt_line_wrapper,
.gantt_link_arrow {
position: absolute;
cursor: pointer;
}
.gantt_line_wrapper div {
background-color: #FFA011;
}
.gantt_task_link:hover .gantt_line_wrapper div {
box-shadow: 0 0 5px 0px #FFA011;
}
.gantt_task_link div.gantt_link_arrow {
background-color: transparent;
border-style: solid;
width: 0px;
height: 0px;
}
.gantt_link_control {
position: absolute;
width: 20px;
top: 0px;
}
.gantt_link_control div {
display: none;
cursor: pointer;
box-sizing: border-box;
position: relative;
top: 50%;
margin-top: -7.5px;
vertical-align: middle;
border: 1px solid #929292;
-webkit-border-radius: 6.5px;
-moz-border-radius: 6.5px;
border-radius: 6.5px;
height: 13px;
width: 13px;
background-color: #f0f0f0;
}
.gantt_link_control.task_right div.gantt_link_point {
margin-left: 7px;
}
.gantt_link_control div:hover {
background-color: #FFF;
}
.gantt_link_control.task_left {
left: -20px;
}
.gantt_link_control.task_right {
right: -20px;
}
.gantt_task_line.gantt_selected .gantt_link_control div,
.gantt_task_line:hover .gantt_link_control div,
.gantt_task_line.gantt_drag_progress .gantt_link_control div,
.gantt_task_line.gantt_drag_move .gantt_link_control div,
.gantt_task_line.gantt_drag_resize .gantt_link_control div,
.gantt_task_line.gantt_selected .gantt_task_progress_drag,
.gantt_task_line:hover .gantt_task_progress_drag,
.gantt_task_line.gantt_drag_progress .gantt_task_progress_drag,
.gantt_task_line.gantt_drag_move .gantt_task_progress_drag,
.gantt_task_line.gantt_drag_resize .gantt_task_progress_drag,
.gantt_task_line.gantt_selected .gantt_task_drag,
.gantt_task_line:hover .gantt_task_drag,
.gantt_task_line.gantt_drag_progress .gantt_task_drag,
.gantt_task_line.gantt_drag_move .gantt_task_drag,
.gantt_task_line.gantt_drag_resize .gantt_task_drag {
display: block;
}
.gantt_link_target .gantt_link_control div {
display: block;
}
.gantt_link_source,
.gantt_link_target {
box-shadow: 0px 0px 3px #04a4f0;
}
.gantt_link_target.link_start_allow,
.gantt_link_target.link_finish_allow {
box-shadow: 0px 0px 3px #ffbf5e;
}
.gantt_link_target.link_start_deny,
.gantt_link_target.link_finish_deny {
box-shadow: 0px 0px 3px #e87e7b;
}
.link_start_allow .gantt_link_control.task_start_date div,
.link_finish_allow .gantt_link_control.task_end_date div {
background-color: #ffbf5e;
border-color: #ffa011;
}
.link_start_deny .gantt_link_control.task_start_date div,
.link_finish_deny .gantt_link_control.task_end_date div {
background-color: #e87e7b;
border-color: #dd3e3a;
}
.gantt_link_arrow_right {
border-width: 2.5px 0 2.5px 5px;
border-top-color: transparent !important;
border-right-color: transparent !important;
border-bottom-color: transparent !important;
border-left-color: #FFA011;
/*margin-top: -1px;*/
}
.gantt_link_arrow_left {
border-width: 2.5px 5px 2.5px 0;
margin-top: -1px;
border-top-color: transparent !important;
border-right-color: #FFA011;
border-bottom-color: transparent !important;
border-left-color: transparent !important;
}
.gantt_link_arrow_up {
border-width: 0 2.5px 5px 2.5px;
border-color: transparent transparent #FFA011 transparent;
border-top-color: transparent !important;
border-right-color: transparent !important;
border-bottom-color: #FFA011;
border-left-color: transparent !important;
}
.gantt_link_arrow_down {
border-width: 2.5px 5px 0 2.5px;
border-top-color: #FFA011;
border-right-color: transparent !important;
border-bottom-color: transparent !important;
border-left-color: transparent !important;
}
.gantt_task_drag,
.gantt_task_progress_drag {
cursor: ew-resize;
display: none;
position: absolute;
}
.gantt_task_drag.task_right {
cursor: e-resize;
}
.gantt_task_drag.task_left {
cursor: w-resize;
}
.gantt_task_drag {
height: 100%;
width: 8px;
z-index: 1;
top: -1px;
}
.gantt_task_drag.task_left {
left: -7px;
}
.gantt_task_drag.task_right {
right: -7px;
}
.gantt_task_progress_drag {
height: 8px;
width: 8px;
bottom: -4px;
margin-left: -4px;
background-position: bottom;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAALCAYAAAB24g05AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkY3Rjk0RUVDMkYzMTFFMkI1OThEQTA3ODU0OTkzMEEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkY3Rjk0RUZDMkYzMTFFMkI1OThEQTA3ODU0OTkzMEEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRjdGOTRFQ0MyRjMxMUUyQjU5OERBMDc4NTQ5OTMwQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRjdGOTRFREMyRjMxMUUyQjU5OERBMDc4NTQ5OTMwQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PobPBzIAAADkSURBVHjaYpk2bRoDDsAExL1QdjEQ/8OmiAWHZk4gXqymqhQM4ty6fU8OSMUA8XdiDBAB4k0a6iqWRga6EKcwMQXduHlnL5DpB8Rv0J2JDFSA+JiOtgZcMwiA2CAxkBxUDVYDLEAKgIpV9XQ0MZwFEgPJAZnHoWpRDAgC4n2W5saiQKfjClQGkBxQDciL+6B6wAbkA/EqJwdrTkUFOQZCAKQGpBbIXA3SCzJggo+XK7OEuBgDsQCkFqgHrBfsBT5eHgZSAUwP2IBfv36TbABMDygdtK1Zv6UESLORaAbIhG6AAAMAKN8wE24DXWcAAAAASUVORK5CYII=);
background-repeat: no-repeat;
z-index: 1;
}
.gantt_task_progress_drag:hover {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAALCAYAAAB24g05AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAq0lEQVQoz6WMsQnCABBFXyII9rqB7qDNZQdtsoWirmAltpnh0BkUfhOHEqLNiaAJIeZ19+//lxRFQR3ungKnOHd5nld1vbRhPALOkjaSNsAlsnaBu4+Bq6TVO5O0BK7xaxa4+xQoJS2+i5GV0fkVuPs8xjMaiN89uh+Buy+Bm6QJLUgaA7fYkJjZGjhJGtCBLMsqYIuZPf/FzJ4pPektSMzsAOyBYcftAzi+ANj8gShpeTzJAAAAAElFTkSuQmCC);
}
.gantt_link_tooltip {
box-shadow: 3px 3px 3px #888888;
background-color: #fff;
border-left: 1px dotted #cecece;
border-top: 1px dotted #cecece;
font-family: Tahoma;
font-size: 8pt;
color: #444;
padding: 6px;
line-height: 20px;
}
.gantt_link_direction {
height: 0px;
border: 0px none #FFA011;
border-bottom-style: dashed;
border-bottom-width: 2px;
transform-origin: 0% 0%;
-ms-transform-origin: 0% 0%;
-webkit-transform-origin: 0% 0%;
z-index: 2;
margin-left: 1px;
position: absolute;
}
.gantt_grid_data .gantt_row.gantt_selected,
.gantt_grid_data .gantt_row.odd.gantt_selected {
background-color: #FFF3A1;
border-top-color: #fff087;
}
.gantt_task_row.gantt_selected {
background-color: #FFF3A1;
}
.gantt_task_row.gantt_selected .gantt_task_cell {
border-right-color: #ffec6e;
}
.gantt_task_line.gantt_selected {
box-shadow: 0 0 5px #04a4f0;
}
.gantt_task_line.gantt_project.gantt_selected {
box-shadow: 0 0 5px #46ad51;
}
.gantt_task_line.gantt_milestone {
visibility: hidden;
background-color: #DB7DC5;
border: 0px solid #cd49ae;
box-sizing: content-box;
-moz-box-sizing: content-box;
}
.gantt_task_line.gantt_milestone div {
visibility: visible;
}
.gantt_task_line.gantt_milestone .gantt_task_content {
background: inherit;
border: inherit;
border-width: 1px;
border-radius: inherit;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
.gantt_task_line.gantt_task_inline_color {
border-color: #999999;
}
.gantt_task_line.gantt_task_inline_color .gantt_task_progress {
background-color: #363636;
opacity: 0.2;
}
.gantt_task_line.gantt_task_inline_color.gantt_selected {
box-shadow: 0 0 5px #999999;
}
.gantt_task_line.gantt_task_inline_color.gantt_project.gantt_selected {
box-shadow: 0 0 5px #999999;
}
.gantt_task_link.gantt_link_inline_color:hover .gantt_line_wrapper div {
box-shadow: 0 0 5px 0px #999999;
}
.gantt_critical_task {
background-color: #e63030;
border-color: #9d3a3a;
}
.gantt_critical_task .gantt_task_progress {
background-color: rgba(0, 0, 0, 0.4);
}
.gantt_critical_link .gantt_line_wrapper > div {
background-color: #e63030;
}
.gantt_critical_link .gantt_link_arrow {
border-color: #e63030;
}
.gantt_row:focus,
.gantt_cell:focus,
.gantt_btn_set:focus,
.gantt_qi_big_icon:focus,
.gantt_popup_button:focus,
.gantt_grid_head_cell:focus {
-moz-box-shadow: inset 0px 0px 1px 1px #4d90fe;
-webkit-box-shadow: inset 0px 0px 1px 1px #4d90fe;
box-shadow: inset 0px 0px 1px 1px #4d90fe;
}
.gantt_split_parent,
.gantt_split_subproject {
opacity: 0.1;
pointer-events: none;
}
.gantt_rollup_child .gantt_link_control,
.gantt_rollup_child:hover .gantt_link_control {
display: none;
}
.gantt_unselectable,
.gantt_unselectable div {
-webkit-user-select: none;
-moz-user-select: none;
-moz-user-select: -moz-none;
}
.gantt_cal_light {
-webkit-tap-highlight-color: transparent;
border-radius: 6px;
font-family: "Arial";
font-size: 13px;
border: 1px solid #bababa;
color: #494949;
font-size: 12px;
position: absolute;
z-index: 10001;
width: 550px;
height: 250px;
box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.07);
}
.gantt_cal_light_wide {
width: 650px;
}
.gantt_cal_light select {
font-family: "Arial";
border: 1px solid #bababa;
font-size: 13px;
padding: 2px;
margin: 0px;
}
.gantt_cal_ltitle {
padding: 7px 10px;
overflow: hidden;
white-space: nowrap;
-webkit-border-top-left-radius: 6px;
-webkit-border-bottom-left-radius: 0;
-webkit-border-top-right-radius: 6px;
-webkit-border-bottom-right-radius: 0;
-moz-border-radius-topleft: 6px;
-moz-border-radius-bottomleft: 0;
-moz-border-radius-topright: 6px;
-moz-border-radius-bottomright: 0;
border-top-left-radius: 6px;
border-bottom-left-radius: 0;
border-top-right-radius: 6px;
border-bottom-right-radius: 0;
}
.gantt_cal_ltitle span {
white-space: nowrap;
}
.gantt_cal_lsection {
color: #727272;
font-weight: bold;
padding: 12px 0px 5px 10px;
}
.gantt_cal_lsection .gantt_fullday {
float: right;
margin-right: 5px;
font-size: 12px;
font-weight: normal;
line-height: 20px;
vertical-align: top;
cursor: pointer;
}
.gantt_cal_lsection {
font-size: 13px;
}
.gantt_cal_ltext {
padding: 2px 10px;
overflow: hidden;
}
.gantt_cal_ltext textarea {
overflow-y: auto;
overflow-x: hidden;
font-family: "Arial";
font-size: 13px;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
border: 1px solid #bababa;
height: 100%;
width: 100%;
outline: none !important;
resize: none;
}
.gantt_section_constraint [data-constraint-time-select] {
margin-left: 20px;
}
.gantt_time {
font-weight: bold;
}
.gantt_cal_light .gantt_title {
padding-left: 10px;
}
.gantt_cal_larea {
border: 1px solid #bababa;
border-left: none;
border-right: none;
background-color: #fff;
overflow: hidden;
height: 1px;
}
.gantt_btn_set {
margin: 10px 7px 5px 10px;
padding: 5px 15px 5px 10px;
float: left;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
border-width: 0;
border-color: #bababa;
border-style: solid;
height: 32px;
font-weight: bold;
background: #fff;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
cursor: pointer;
}
.gantt_hidden {
display: none;
}
.gantt_btn_set div {
float: left;
font-size: 13px;
height: 22px;
line-height: 22px;
background-repeat: no-repeat;
vertical-align: middle;
}
.gantt_save_btn {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAPCAYAAAACsSQRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTBBQUI0RDhDRUJEMTFFMjhFM0ZENTlERUM1OEQzRTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QTBBQUI0RDlDRUJEMTFFMjhFM0ZENTlERUM1OEQzRTYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBMEFBQjRENkNFQkQxMUUyOEUzRkQ1OURFQzU4RDNFNiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBMEFBQjREN0NFQkQxMUUyOEUzRkQ1OURFQzU4RDNFNiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjdPZV0AAACtSURBVHjanJPbDYUgEESvtwJKoQRLoRNL0RK0ArUCS9AOpAMclDVkw0s2mQ9XcpwJY2OM+VWMgDQ9/CsAEtoh9W6skw+S0Akd5hl1J6kADJBwADs9j9MmIszQ5GJo793qf2nwLUYc0E7xONbaBmloZKAsgCCLW0p2qCsBEEQ6F33gcBbg304I1JYA+BWHQFlAqCcclAXEykaguQSQaiyBVEmbm8RfLFgzo3MJMACZSGxiH8QaMAAAAABJRU5ErkJggg==);
margin-top: 2px;
width: 21px;
}
.gantt_cancel_btn {
margin-top: 2px;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDkzMDA3MzlDMzA0MTFFMjg2QTVFMzFEQzgwRkJERDYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDkzMDA3M0FDMzA0MTFFMjg2QTVFMzFEQzgwRkJERDYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowOTMwMDczN0MzMDQxMUUyODZBNUUzMURDODBGQkRENiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowOTMwMDczOEMzMDQxMUUyODZBNUUzMURDODBGQkRENiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmYuYOUAAAEdSURBVHjaYvz//z8DJYAFXWDlypU8QKoIiD2A2AwqfAqIdwBxX3h4+Bdk9YzILgBqtgdS84FYEYeF94E4EWjIQZgAE5LmQCB1AKoZZKMPEAtAMYh9GSp3AKjWD8UFQAEhIPshEIOc3wHENUBb/qJ57SyQMoJyPwKxElDNO1gYFEE17wMKVmIJlzNQzeegrjaA6qmBecEbSvfh0GwMxGeBhoPoemQ9MAO0kEIbl2YTqPAFKK2IbMB3AjabYIkRZmQD7kNpMyI0G0PpO8gGbIUFJj7NQDk2INWIrIcJKfBAKcwJqvkcDs0TgFgXGo19KCkRmpDWQdWDEk0NUoCBoq0FqhkE/IEWbKJKUmZEz43QzFSKIzN1481M5ACAAAMAlfl/lCwRpagAAAAASUVORK5CYII=);
width: 20px;
}
.gantt_delete_btn {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzQzRjMxM0NDRUJEMTFFMjlCNDZDQzhFQUM0ODRCMEIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzQzRjMxM0RDRUJEMTFFMjlCNDZDQzhFQUM0ODRCMEIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDNDNGMzEzQUNFQkQxMUUyOUI0NkNDOEVBQzQ4NEIwQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDNDNGMzEzQkNFQkQxMUUyOUI0NkNDOEVBQzQ4NEIwQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoU+5FoAAACMSURBVHja7JPdDYAgDIQLE+gmjuAIbOIKjMRIbAAb1BZLUozgz7OXfIbWKxeCAiKCwmNfXnsNP5S4mIkMrSYiEaY2LOFloO6QVF1JamPGc2IvpaeSbqXY4LkOLwU6OTyvgzBasxwnBnivYOGj/sEXg27gbd/JpWZiOf0pV7Anlq9UGqs07hTFC7sAAwCbSNs8SyqFMAAAAABJRU5ErkJggg==);
margin-top: 2px;
width: 20px;
}
.gantt_cal_cover {
width: 100%;
height: 100%;
position: fixed;
z-index: 10000;
top: 0px;
left: 0px;
background-color: black;
opacity: 0.1;
filter: progid:DXImageTransform.Microsoft.Alpha(opacity=10);
}
.gantt_custom_button {
padding: 0px 3px 0px 3px;
font-family: "Arial";
font-size: 13px;
font-weight: normal;
margin-right: 10px;
margin-top: -5px;
cursor: pointer;
float: right;
height: 21px;
width: 90px;
border: 1px solid #CECECE;
text-align: center;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
-ms-border-radius: 4px;
-o-border-radius: 4px;
border-radius: 4px;
}
.gantt_custom_button div {
cursor: pointer;
float: none;
height: 21px;
line-height: 21px;
vertical-align: middle;
}
.gantt_custom_button div:first-child {
display: none;
}
.gantt_cal_light_wide {
width: 580px;
padding: 2px 4px;
}
.gantt_cal_light_wide .gantt_cal_larea {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
border: 1px solid #bababa;
}
.gantt_cal_light_wide .gantt_cal_lsection {
border: 0px;
float: left;
text-align: right;
width: 80px;
height: 20px;
padding: 5px 10px 0px 0px;
}
.gantt_cal_light_wide .gantt_wrap_section {
position: relative;
padding: 10px 0;
overflow: hidden;
border-bottom: 1px solid #ebebeb;
}
.gantt_cal_light_wide .gantt_section_time {
overflow: hidden;
padding-top: 2px !important;
padding-right: 0px;
height: 20px !important;
}
.gantt_cal_light_wide .gantt_cal_ltext {
padding-right: 0px;
}
.gantt_cal_light_wide .gantt_cal_larea {
padding: 0 10px;
width: 100%;
}
.gantt_cal_light_wide .gantt_section_time {
background: transparent;
}
.gantt_cal_light_wide .gantt_cal_checkbox label {
padding-left: 0px;
}
.gantt_cal_light_wide .gantt_cal_lsection .gantt_fullday {
float: none;
margin-right: 0px;
font-weight: bold;
cursor: pointer;
}
.gantt_cal_light_wide .gantt_custom_button {
position: absolute;
top: 0;
right: 0;
margin-top: 2px;
}
.gantt_cal_light_wide .gantt_repeat_right {
margin-right: 55px;
}
.gantt_cal_light_wide.gantt_cal_light_full {
width: 738px;
}
.gantt_cal_wide_checkbox input {
margin-top: 8px;
margin-left: 14px;
}
.gantt_cal_light input {
font-size: 13px;
}
.gantt_section_time {
background-color: white;
white-space: nowrap;
padding: 2px 10px 5px;
padding-top: 2px !important;
}
.gantt_section_time .gantt_time_selects {
float: left;
height: 25px;
}
.gantt_section_time .gantt_time_selects select {
height: 23px;
padding: 2px;
border: 1px solid #bababa;
}
.gantt_duration {
width: 100px;
height: 23px;
float: left;
white-space: nowrap;
margin-left: 20px;
line-height: 23px;
}
.gantt_duration .gantt_duration_value,
.gantt_duration .gantt_duration_dec,
.gantt_duration .gantt_duration_inc {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
vertical-align: top;
height: 100%;
border: 1px solid #bababa;
}
.gantt_duration .gantt_duration_value {
width: 40px;
padding: 3px 4px;
border-left-width: 0;
border-right-width: 0;
}
.gantt_duration .gantt_duration_value.gantt_duration_value_formatted {
width: 70px;
}
.gantt_duration .gantt_duration_dec,
.gantt_duration .gantt_duration_inc {
width: 20px;
padding: 1px;
padding-bottom: 1px;
background: #fff;
}
.gantt_duration .gantt_duration_dec {
-moz-border-top-left-radius: 4px;
-moz-border-bottom-left-radius: 4px;
-webkit-border-top-left-radius: 4px;
-webkit-border-bottom-left-rad