/* EventCal styles */

#CalendarWrap {
position: relative; margin: 0; padding: 0; border: 0;
}

.calendar-load {
border: 1px solid #bebebe; border-right: 0;
}

#CalendarWrap td,
#CalendarWrap th {
font-weight: normal; text-align: left; vertical-align: top;
}

#CalendarWrap table {
width: 100%; border: none; border-spacing: 0;
}

#CalendarTimelineRows {
position: relative;
}

.calendar-timeline-wrap {
position: relative; border: 0;
}

.calendar-timeline-scroll-wrap {
position: relative; width: 100%; height: auto; border-top: 1px solid #dedede;
}
#CalendarWrap.gadget .calendar-timeline-scroll-wrap {
height: auto !important; max-height: none !important;
}
.calendar-timeline-scroll {
position: relative; overflow: auto; overflow-y: scroll; overflow-x: hidden; width: 100%; height: 100%; margin: 0; padding: 0;
}
#CalendarTimelineContainment {
position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}
.ui-resizable-s {
height: 1px; background: #bebebe; margin-bottom: 4px; border-top: 3px solid #bebebe;
z-index: 6000;
}
.ui-resizable-e {
width: 1px; background: #bebebe; margin-right: 4px; border-left: 3px solid #bebebe;
z-index: 6000;
}
.ui-resizable-e:hover,
.ui-resizable-s:hover {
border-color: #333; background-color: #333;
}

#CalendarWrap.gadget .ui-resizable-s,
#CalendarWrap.gadget .ui-resizable-e {
display: none !important;
}

.calendar-timeline-header {
padding-right: 17px; background: #efefef;
}

.calendar-timeline-header th {
background: #efefef;
}

.calendar-timeline-sort-col {
padding: 0 0 0 5px; vertical-align: middle !important; max-width: 10px !important; width: 10px !important; overflow: hidden !important;
white-space: nowrap;
border-bottom: 1px solid #e4e4e4; border-left: 1px solid #bebebe;
}

.calendar-timeline-time-col,
.calendar-timeline-header-col.time-header {
width: 3%; min-width: 3%; max-width: 3%; padding: 0;
border-bottom: 1px solid #e4e4e4; border-left: 1px solid #dedede;
color: #999; text-align: left; font-size: 0.875em;
}
.calendar-timeline-time-col.week-view,
.calendar-timeline-header-col.time-header.week-view {
width: 1.5%; min-width: 1.5%; max-width: 1.5%;
}
.calendar-timeline-time-col.month-view,
.calendar-timeline-header-col.time-header.month-view {
width: 2%; min-width: 2%; max-width: 2%;
}
.calendar-timeline-time-col.halfyear-view,
.calendar-timeline-header-col.time-header.halfyear-view {
width: 2.5%; min-width: 2.5%; max-width: 2.5%; font-size: 0.8em;
}
.calendar-timeline-time-col.year-view,
.calendar-timeline-header-col.time-header.year-view {
width: 1.3%; min-width: 1.3%; max-width: 1.3%; font-size: 0.8em;
}

th.timeline-header-top-row {
padding: 5px 0 5px 5px; text-align: left; vertical-align: middle;
}

.timeline-header-title {
clear: both; padding: 5px; margin: 0 0 5px 0; background: #dedede; font-size: 1.125em;
}
.timeline-header-actions {
float: left; padding-bottom: 5px;
}
#CalendarWrap.gadget .timeline-header-actions {
display: none;
}
.timeline-hours-summary {
float: right; padding: 5px 20px;
}
.timeline-hours-summary th {
padding: 2px; font-weight: bold !important; text-align: right !important;
}
.timeline-hours-summary td {
padding: 2px 2px 2px 10px;
}

/*#CalendarWrap.gadget .timeline-hours-summary {
display: none;
}*/

.calendar-timeline-header .calendar-timeline-sort-col {
border-bottom: 0;
}

.calendar-timeline-header .calendar-timeline-time-col {
height: auto; padding-top: 3px; vertical-align: bottom; border-color: transparent; text-indent: -8px;
}
.calendar-timeline-header .calendar-timeline-time-col.msie7-fix {
text-indent: 0;
}

.calendar-timeline-header .calendar-timeline-header-col {
padding: 3px 0; color: #666; text-align: center !important; text-transform: lowercase;
border-left: 1px solid #bebebe; border-top: 1px solid #bebebe;
}
.calendar-timeline-header .calendar-timeline-header-col:first-child {
border-left: 0;
}

.calendar-timeline-header-action:hover {
background-color: #09f; cursor: pointer;
}

.calendar-timeline-header th.weekend {
background-color: #e4e4e4;
}
.calendar-timeline-header th.holiday {
background-color: #f8e5e5;
}

.calendar-timeline-header th.calendar-timeline-header-col:hover {
background: #999; color: #fff; cursor: pointer;
}

.calendar-timeline-time-col.midnight {
border-left: 1px solid #bebebe;
}
.calendar-timeline-time-col.midnight:first-child {
border-left: 0;
}

.calendar-timeline-row { position: relative; width: 100%; }
.calendar-timeline-row td { background: #fafafa; }
.calendar-timeline-row.alt-row td { background: #f4f4f4; }
.calendar-timeline-row.project td {
font-weight: bold !important;
background: #eaeaea !important;
background: #f4f4f4 !important;
border-bottom: 1px solid #dedede;
}
.calendar-timeline-row.subproject td {
background: #f4f4f4 !important;
}
.calendar-timeline-row.subproject td.calendar-timeline-sort-col {
border-left: 5px solid #bebebe;
}
.calendar-timeline-row:hover td { background: #fff !important; }
.calendar-timeline-row.focus td { background: #d0f6ff !important; }
.calendar-timeline-row .vertical-bar {
display: block; width: 1px; height: 99%;/* 100% will break the layout somehow */ margin: 0 auto; background: #eaeaea;
}

.calendar-timeline-time-col.morning,
.calendar-timeline-time-col.evening {
background: #f4f4f4;
}
.calendar-timeline-row.alt-row .calendar-timeline-time-col.morning,
.calendar-timeline-row.alt-row .calendar-timeline-time-col.evening {
background: #f1f1f1;
}

.calendar-timeline-time-col.holiday {
background: #fff8f9;
}
.calendar-timeline-row.alt-row .calendar-timeline-time-col.holiday {
background: #fff7f8;
}
.calendar-timeline-time-col.holiday.morning,
.calendar-timeline-time-col.holiday.evening {
background: #feeff1;
}
.calendar-timeline-row.alt-row .calendar-timeline-time-col.holiday.morning,
.calendar-timeline-row.alt-row .calendar-timeline-time-col.holiday.evening {
background: #feecef;
}
.calendar-timeline-time-col.month-view.holiday {
background: #feeff1 !important;
}
.calendar-timeline-row.alt-row .calendar-timeline-time-col.month-view.holiday {
background: #feecef !important;
}

#CalendarTimelineEvents {
float: left; width: 0;
}
#CalendarTimelineEvents.msie7-fix {
float: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;
}
.calendar-timeline-event-col {
position: absolute; top: inherit; left: 0; right: 0;
}
#CalendarTimelineEvents.msie7-fix .calendar-timeline-event-col {
position: relative;
}

.calendar-timeline-event {
position: absolute; left: 0%; z-index: 5000;
display: block; height: 15px; width: 0%; min-width: 5px; margin: 0; padding: 0; border: 0; border-left: 1px solid #fff;
background: #06c; background-image: none !important; text-align: left;
}
.calendar-timeline-event.running {
/*border-right: 0; padding-right: 1px;*/
}
.calendar-timeline-event.planned {
opacity: 0.5;
}
.calendar-timeline-event.drag-helper {
background: #09f !important; border-color: #09f;
opacity: 0.75;
}
.calendar-timeline-event.edit-target {
background: #09f !important;
}
.calendar-timeline-event.drag-ghost {
background: #cecece !important; border-color: #cecece;
opacity: 0.75;
}
/*.calendar-timeline-event.locked {
border: 1px solid #333; height: 8px;
}*/
.calendar-timeline-event.not_started {
background: #aaaaaa !important;
}
.calendar-timeline-event.active {
background: #2086ca !important;
}
.calendar-timeline-event.yellow-alert,
.calendar-timeline-event.notice {
background: #fc0 !important;
}
.calendar-timeline-event.checkpoint {
background: #eb0 !important;
}
.calendar-timeline-event.red-alert,
.calendar-timeline-event.alarm {
background: #e00 !important; z-index: 9000;
}
.calendar-timeline-event.green-alert {
background: #0a0 !important;
}
.calendar-timeline-event:hover,
.calendar-timeline-event.focus {
opacity: 1;
background: #09f !important;
}
.calendar-timeline-event.checkpoint:hover {
z-index: 90000;
}
.calendar-timeline-event.ready {
background: #66b464 !important;
}
.calendar-timeline-event .circle {
width: 10px; height: 10px; background: inherit;
position: absolute; bottom: -3px; left: -5px;
}
.calendar-timeline-event .desc {
display: block; float: left; width: 95%; max-width: 95%; overflow: hidden; font-size: 0.875em; white-space: nowrap; padding: 1px 1px 0; color: #fff; cursor: default; font-weight: bold;
}
.calendar-timeline-event.planned .desc {
color: #111;
}
.calendar-timeline-event:hover .desc,
.calendar-timeline-event.focus .desc {
color: #fff;
}


.color_label {
float: left; margin: 0.5em 1em 0.5em 0;
}
.label {
display: block; float: left; width: 12px; height: 12px; margin-right: 0.5em; background: #dedede;
}
.label.alarm {
background: #e00;
}
.label.notice {
background: #fc0;
}
.label.ready {
background: #66b464;
}
.label.not_started {
background: #aaaaaa;
}
.label.active {
background: #2086ca;
}
.label.checkpoint {
background: #eb0;
}

.calendar-timeline-event-break {
position: absolute; left: 50%; top: 0; margin-left: -2px; width: 4px; height: inherit; background: #666; opacity: 0.5;
}

td.calendar-timeline-sort-col {
padding-top: 5px; vertical-align: top !important;
}

td.calendar-timeline-sort-col .color-box {
display: block; float: right; width: 8px; height: 8px; background: red;
-webkit-border-radius: 4px; -khtml-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px;
}
td.calendar-timeline-sort-col .sort-title {
font-size: 1.225em;
}
td.calendar-timeline-sort-col .sort-col-data {
padding: 3px 0; color: #666;
}
td.calendar-timeline-sort-col .work-time-balance {
}
td.calendar-timeline-sort-col .hours-summary {
}
td.calendar-timeline-sort-col .hours-summary span {
}
td.calendar-timeline-sort-col .hours-planned {
}

.calendar-timeline-row.collapsable td.calendar-timeline-sort-col {
background-image: url(/common/images/icons/16x16/folder_maximize.png) !important;
background-position: 99% center !important;
background-repeat: no-repeat !important;
}
.calendar-timeline-row.collapsable.collapsed td.calendar-timeline-sort-col {
background-image: url(/common/images/icons/16x16/folder_minimize.png) !important;
}

.calendar-hint,
.calendar-timeline-hint {
border: 0 !important;
background: #333 !important; color: #fff !important;
-webkit-border-radius: 0 !important; -khtml-border-radius: 0 !important; -moz-border-radius: 0 !important; border-radius: 0 !important;
}
.calendar-timeline-hint {
background: #fff !important; color: #333 !important;
}

#CalendarStatusbar {
background: #efefef; color: #666;
}

#CalendarRealtimeCursor {
display: none; top: 0; left: 0; position: absolute; opacity: 0.4;
height: 100%; width: 0; margin: 0; padding: 0; border-left: 1px dashed #333;

}

#CalendarHourCursor {
display: none; top: 0; left: 0; position: absolute;
height: 100%; width: 1px; margin: 0; padding: 0;
background: #333;
}

#CalendarDatepicker {
position: absolute; top: 0; left: 0; display: none; margin: 0; z-index: 9000;
background: #fff; color: #555; border: 1px solid #bebebe;
}

#CalendarQuickInfo,
.calendar-quick-info {
position: absolute; max-width: 450px; top: 0; left: 0; display: none; margin: 0; padding: 0 20px 5px 5px; border: 0; z-index: 9000;
background: #fff; color: #555; border: 1px solid #bebebe;
/*-webkit-border-radius: 2px; -khtml-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px;*/
/*border: 1px solid #fff; border-width: 0 1px 1px 0;*/
}
#CalendarQuickInfo h1,
.calendar-quick-info h1 {
margin: 0; padding: 8px 0;
color: #333; font-size: 1.225em; font-weight: normal;
}
#CalendarQuickInfo .planned-time,
.calendar-quick-info .planned-time {
color: #aaa;
}
#CalendarQuickInfo h2,
.calendar-quick-info h2 {
margin: 0; padding: 0;
font-size: 1em; font-weight: normal;
}
#CalendarQuickInfo a,
.calendar-quick-info a {
font-weight: normal;
}
#CalendarQuickInfo img,
.calendar-quick-info img {
display: block; margin: 0 0 2px 2px;
}
#CalendarQuickInfo .arrow,
.calendar-quick-info .arrow {
margin: -6px 0 0 -1px;
}
#CalendarQuickInfo .icons,
.calendar-quick-info .icons {
position: absolute; top: 5px; right: 5px; background: none;
}
#CalendarQuickInfo table,
.calendar-quick-info table {
width: 100%;
}
#CalendarQuickInfo td,
#CalendarQuickInfo th,
.calendar-quick-info td,
.calendar-quick-info th {
width: auto; padding: 4px 10px 4px 0;
background: none !important; text-align: left; vertical-align: top;
}
#CalendarQuickInfo th,
.calendar-quick-info th {
font-weight: bold; padding: 2px 10px 2px 0; white-space: nowrap;
}
#CalendarQuickInfo td,
.calendar-quick-info td {

}
#CalendarQuickInfo td:first-child,
.calendar-quick-info td:first-child {
border-width: 0 0 1px 0; width: 1%;
}
#CalendarQuickInfo em,
.calendar-quick-info em {
display: block; padding: 5px 0 0; color: #999; font-style: normal; font-size: 0.875em;
}
#CalendarQuickInfo .header,
.calendar-quick-info .header {
display: block; text-align: left; padding: 5px; margin: 0 -20px 0 -5px; background-color: #efefef;
}

#CalendarQuickEdit {
position: absolute; top: 0; left: 0; display: none; margin: 0; padding: 0; border: 1px solid #bebebe; z-index: 7000;
background: #fff;
-webkit-border-radius: 2px; -khtml-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px;
}
#CalendarQuickEdit h1 {
display: block; margin: 5px 0 10px; padding: 0;
font-size: 1.225em; font-weight: normal;
color: #333;
}
#CalendarQuickEdit h1 a {
font-weight: normal;
}
#CalendarQuickEdit h1.toggle-next {
float: left; clear: both;
color: #06c; cursor: pointer;
}
#CalendarQuickEdit em {
font-style: normal; color: #666;
}
#CalendarQuickEdit select,
#CalendarQuickEdit textarea {
width: 250px;
}
#CalendarQuickEdit .arrow {
margin: -6px 0 0 0;
}
#CalendarQuickEdit table.calendar-quick-edit-wrap {
}
#CalendarQuickEdit .calendar-quick-edit-form {
width: 550px;
}
#CalendarQuickEdit .calendar-quick-edit-handle {
width: 120px; padding: 5px; background: #efefef;
}
#CalendarQuickEdit .calendar-quick-edit-handle button {
width: 100%;
}
#CalendarQuickEditForm {
display: block; margin: 0; padding: 7px;
}
#CalendarQuickEditForm table {
width: 100%; margin: 0;
}
#CalendarQuickEditForm table td {
width: 50%;
}
#CalendarQuickEditForm label {
display: block; padding: 5px 0 2px 0;
}
#CalendarQuickEditForm td label {
padding-right: 1em;
}

#CalendarLoading {
position: absolute; top: 0; left: 0;
display: none; padding: 10px 10px; border: 2px solid #fff; line-height: 32px;
background: #fff; color: #333; text-align: center;
}
#CalendarLoading img {
float: left; margin-right: 10px;
}

#CalendarSettings {
margin: 2px 0 0 0; padding: 10px; border-top: 1px solid #bebebe;
background: #efefef;
}
#CalendarSettings label {
display: block; clear: both;
}
