/*
 * gantt.css file of FlexGanttFX
 * 
 * Copyright 2014 Dirk Lemmermann Software & Consulting
 */

/* Define global colors */
.root {
	-tree-table-row-background-even: white;	
	-tree-table-row-background-odd: rgb(245,245,245);	
}

/*
 * The split pane padding gets removed so that the tree table and the
 * graphics view both completely fill their sides.
 */
.split-pane {
	-fx-padding: 0.0;
}

.scroll-bar {
	-fx-opacity: .75;
}

/*
 * Row header cells are used in the row header column / the first column
 * of the tree table. The row header is used to display row numbers. The user
 * can also resize rows via a mouse drag inside the cell.
 */ 
.row-header-cell {
	-fx-text-fill: black;
	-fx-background-color: derive(-fx-box-border,30.0%), linear-gradient(to right, derive(-fx-base,-3.0%), derive(-fx-base,5.0%) 50.0%, derive(-fx-base,-3.0%));
	-fx-border-color: transparent -fx-box-border  -fx-box-border -fx-box-border ;
}

/*
 * The tree table header has to have the same height as the timeline.
 * The height can depend on the location of the Gantt chart if it is
 * shown in a multi Gantt chart container.
 */
.gantt-tree-table-view .column-header,
.gantt-tree-table-view-first .column-header {
	-fx-pref-height: 60px;
}

/*
 * The table header is smaller when the Gantt chart is placed in the
 * middle or bottom of a multi Gantt chart context.
 */
.gantt-tree-table-view-middle .column-header,
.gantt-tree-table-view-last .column-header {
	-fx-pref-height: 24px;
}

/*
 * We do not need the vertical scrollbar of the table. We are styling it
 * away by setting its preferred width to zero. But we only do this if the
 * current display mode is "standard" (table and graphics are both visible).
 */
.tree-table-view-standard-display-mode > .virtual-flow > .scroll-bar:vertical,  
.tree-table-view-standard-display-mode > .virtual-flow > .scroll-bar:vertical .decrement-arrow ,  
.tree-table-view-standard-display-mode > .virtual-flow > .scroll-bar:vertical .increment-arrow {
	-fx-pref-width: 0.0;
}

/*
 * We do not need the horizontal scrollbar of the table. We are styling it
 * away by setting its preferred width to zero. We are replacing the scrollbar
 * with our own scrollbar located hidden inside a HiddenSidesPane instance. The
 * scrollbar only becomes visible if the user moves the mouse cursor close to
 * the bottom edge of the table.
 */
.gantt-tree-table-view > .virtual-flow > .scroll-bar:horizontal,  
.gantt-tree-table-view > .virtual-flow > .scroll-bar:horizontal .decrement-arrow ,  
.gantt-tree-table-view > .virtual-flow > .scroll-bar:horizontal .increment-arrow {
	-fx-pref-height: 0.0;
}

/*
 * We like to center the column header text and use a normal font weight
 * for it.
 */
.gantt-tree-table-view .column-header .label {
    -fx-alignment: center;
}

.gantt-tree-table-view .column-header, .gantt-tree-table-view .filler {
    -fx-font-weight: normal;
}

/* 
 * Alternating row colors inside the table. To make this work we have to
 * also set styles on tree table row cells. Quite nasty if you ask me.
 */
.tree-table-row-cell:even {
	-fx-background-color: -tree-table-row-background-even;	
}

.tree-table-row-cell:odd {
	-fx-background-color: -tree-table-row-background-odd;	
}

.gantt-tree-table-view > .virtual-flow > .clipped-container > .sheet > .tree-table-row-cell:selected {
	-fx-background-color: -fx-selection-bar-non-focused;
}

.gantt-tree-table-view:focused > .virtual-flow > .clipped-container > .sheet > .tree-table-row-cell:selected {
	-fx-background-color: -fx-selection-bar;
}

/*
 * We are adding depth to the table content and graphics content by placing
 * a shadow below the table header and the timeline. This gives the impression
 * that the content of both really does slide "behind" these header controls.
 */
.viewport-shadow {
	-fx-pref-height: 6;
	-fx-background-color: linear-gradient(from 0% 0% to 0% 100%, rgba(0,0,0,.2), rgba(0,0,0,0));
}

/*
 * The style used by the buttons inside the layers control (layer up, down, delete).
 */
.layers-navigate-button {
	-fx-background-insets: 0;
	-fx-border-insets: null;
	-fx-background-color: transparent;
	-fx-padding: 0;
}

/*
 * The column headers inside the layers control.
 */
.layers-table-header {
	-fx-padding: 0 0 5 0;
	-fx-text-fill: gray;
	-fx-font-weight: bold;
	-fx-alignment: center;
	-fx-border-color: transparent transparent lightgray transparent;
}

/*
 * The blank area on top of the graphics view that becomes visible
 * for Gantt charts in the middle or last position in a multi Gantt
 * chart container context.
 */
.graphic-view-header {
	-fx-background-color: -fx-body-color;
	-fx-border-color: 
        derive(-fx-base, 80%) 
        linear-gradient(to bottom, derive(-fx-base,80%) 20%, derive(-fx-base,-10%) 90%)
        derive(-fx-base, 10%) 
        linear-gradient(to bottom, derive(-fx-base,80%) 20%, derive(-fx-base,-10%) 90%),
        /* Outer border: */
        transparent -fx-box-border -fx-box-border transparent;
    -fx-border-insets: 0 1 1 0, 0 0 0 0;
    -fx-border-width: 0.083333em 0.083333em 0.083333em 0, 0.083333em 0.083333em 0.083333em;  
    -fx-pref-height: 0px;  
}

/*
 * The container "around" the timeline and the graphics area.
 */
.timeline-graphics-wrapper {
    -fx-background-color: -fx-box-border, -fx-control-inner-background;
    -fx-background-insets: 0, 1;
    -fx-padding: 1;
}

.timeline-graphics-wrapper:focused {
    -fx-background-color: -fx-faint-focus-color, -fx-focus-color, -fx-control-inner-background; 
    -fx-background-insets: -2, -0.3, 1;
}

/*
 * The time slider is used to scroll the timeline to the left or right.
 * It becomes visible when the user moves the mouse cursor close to the
 * bottom edge of the graphics view.
 */
.time-slider {
	-fx-opacity: .75;
    -fx-background-radius: 0.0;
    -fx-border-color: null;
    -fx-border-radius: 0.0;
}

.time-slider:horizontal {
    -fx-background-color: linear-gradient(to bottom, derive(-fx-base,-3%), derive(-fx-base,5%) 50%, derive(-fx-base,-3%));
    -fx-pref-height: 16.0;
    -fx-max-height: 16.0;
}

.time-slider > * > .slider {
    -fx-show-tick-marks: false;
}

.time-slider > * > .slider > .track {
    -fx-background-color: transparent;
}

.time-slider > * > .slider > .thumb {
	-fx-pref-width: 100;
    -fx-background-color: -fx-outer-border, -fx-inner-border, -fx-body-color; 
    -fx-background-insets: 2.0, 3.0, 4.0;
    -fx-background-radius: 3.0, 2.0, 1.0;
}

.time-slider > * > .slider:focused > .thumb {
}

.time-slider > * > .adjust-plus {
	-fx-pref-width: 0;
	-fx-shape: null;
}

.time-slider > * > .adjust-minus {
	-fx-pref-width: 0;
	-fx-shape: null;
}

/*
 * The styling of the labels showing the zone ID of a row.
 */
.zoneIdLabel {
	-fx-padding: 4 5 4 5;
	-fx-background-color: 
		transparent,
        rgba(0,0,0,0.05),
        linear-gradient(#dcca8a, #c7a740),
        linear-gradient(#f9f2d6 0%, #f4e5bc 20%, #e6c75d 80%, #e2c045 100%),
        linear-gradient(#f6ebbe, #e6c34d);
    -fx-background-insets: 0,2,3,4,5;
    -fx-background-radius: 4;
    -fx-font-family: "Helvetica";
    -fx-font-size: 10px;
    -fx-text-fill: #311c09;
    -fx-effect: innershadow( three-pass-box , rgba(0,0,0,0.1) , 2, 0.0 , 0 , 1);
}