.calendar-time-line{
    margin: 6px;
    height: calc(100% - 30px);
    .header{
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 1.5em;
        .left{
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .center{
            h2{
                font-size: 1.75em;
            }
        }
        .left, .right {
            button.ivu-btn, button.ivu-btn.ivu-btn-primary{
                background: var(--button-background-color);
                color: var(--button-font-color);
                border-color: var(--button-font-color-light);
                height: 28px;
                width: 62px;
                &:hover {
                  background: var(--button-background-color-bright);
                  color: var(--button-font-color-bright);
                  border-color: var(--button-font-color-bright);
                }
                &:disabled, &:disabled:hover {
                  background: var(--button-background-color-light);
                  color: var(--button-font-color-light);
                  border-color: var(--button-font-color-light);
                }
                line-height: 0;
                span {
                  line-height: 0.7;
                }
            }
            button.ivu-btn.button-active-color{
                background: var(--button-background-color-bright);
                color: var(--button-font-color-bright);
                border-color: var(--button-font-color-bright);
            }
        }
    }
    .container{
        height: 100%;
        display: flex;
        border: 1px solid #ddd;
        .group{
            height: 100%;
            flex-shrink: 0;
            align-self: center;
            .group-header{
                height: 35px;
                font-size: 1em;
                border-bottom: 1px solid #ddd;
                >div{
                    height: 100%;
                    padding: 7px 8px;
                    font-weight: bold;
                }
            }
            .group-items{
                height: calc(100% - 35px);
                >.group-item{
                    height: 35px;
                    display: flex;
                    align-items: center;
                    border-bottom: 1px solid #ddd;
                    >span{
                        margin-left: 7px;
                    }
                }
            }
        }
        .group.weekview{
            .group-header{
                height: 47px;
            }
            .group-items{
                height: calc(100% - 47px);
            }
        }
        .main-container{
            position: relative;
            padding-left: 6px;
            height: 100%;
            display: flex;
            flex-shrink: 0;
            overflow-x: auto;
            .time-line{
                .empty-space{
                    height: calc(100% - 35px);
                    display: flex;
                    >div{
                        height: 100%;
                        width: 50%;
                        .cell{
                            height: 35px;
                            border-bottom: 1px solid #ddd;
                        }
                        &:first-child{
                            border-right: 1px dashed #ddd;
                        }
                    }
                }
                .dayview{
                    height: 100%;
                    align-self: center;
                    flex-shrink: 0;
                    .dayview-header{
                        height: 35px;
                        font-size: 1em;
                        border-bottom: 1px solid #ddd;
                        .date{
                            height: 100%;
                            padding: 7px 0px;
                            text-align: center;
                        }
                    }
                }
                .weekview{
                    height: 100%;
                    .weekviewr-header{
                        height: 100%;
                        .date-header{
                            height: 25px;
                            width: 100%;
                            border-bottom: 1px solid #ddd;
                            text-align: center;
                        }
                        .hours{
                            height: calc(100% - 25px);
                            display: flex;
                            .hour{
                                height: 100%;
                                align-self: center;
                                .hour-header{
                                    border-bottom: 1px solid #ddd;
                                    .title{
                                        text-align: center;
                                    }
                                }
                                >.empty-space{
                                    height: calc(100% - 25px);
                                }
                                &:not(:first-child){
                                    border-left: 1px solid #ddd;
                                }
                            }
                        }
                    }
                }
                .monthview{
                    height: 100%;
                    .monthview-header{
                        height: 35px;
                        font-size: 1em;
                        border-bottom: 1px solid #ddd;
                        .date{
                            height: 100%;
                            padding: 7px 0px;
                            text-align: center;
                        }
                    }
                }
                &:not(:first-child){
                    .dayview{
                        border-left: 1px solid #ddd;
                    }
                    .weekview{
                        border-left: 1px solid #ddd;
                    }
                    .monthview{
                        border-left: 1px solid #ddd;
                    }
                }
            }
            .calendar-chart-day{
                top: 35px;
                flex-shrink: 0;
                width: 1440px;
                height: calc(100% - 35px);
                position: absolute;
            }
            .calendar-chart-week{
                top: 47px;
                flex-shrink: 0;
                width: 10080px;
                height: calc(100% - 47px);
                position: absolute;
            }
            .calendar-chart-month{
                top: 35px;
                flex-shrink: 0;
                width: 1440px;
                height: calc(100% - 35px);
                position: absolute;
            }
            .group-chart{
                position: relative;
                height: 35px;
                width: 100%;
                .chart{
                    position: absolute;
                    overflow: hidden;
                    text-overflow: ellipsis;
                    white-space: nowrap;
                }
            }
        }
    }
}