MOFA/components/calendar/calendar.css

351 lines
14 KiB
CSS
Raw Normal View History

2024-11-03 17:41:49 +00:00
.calendar-wrap {
--arrow-icon: url("data:image/svg+xml,%3Csvg width='11' height='19' viewBox='0 0 11 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.14293 2L1.71436 9.42858L9.14293 16.8571' stroke='%23212B36' stroke-width='2.28571' stroke-linecap='square'/%3E%3C/svg%3E%0A");
--calendar-icon: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 19.0004C2 20.7005 3.3 22.0006 5 22.0006H19C20.7 22.0006 22 20.7005 22 19.0004V10.9998H2V19.0004ZM19 3.99924H17V2.99917C17 2.39912 16.6 1.99909 16 1.99909C15.4 1.99909 15 2.39912 15 2.99917V3.99924H9V2.99917C9 2.39912 8.6 1.99909 8 1.99909C7.4 1.99909 7 2.39912 7 2.99917V3.99924H5C3.3 3.99924 2 5.29934 2 6.99947V8.99962H22V6.99947C22 5.29934 20.7 3.99924 19 3.99924Z' fill='%233366FF'/%3E%3C/svg%3E%0A");
max-width: 1400px;
margin-left: auto;
margin-right: auto;
transform: translateY(-12px);
.toggle-view {
display: flex;
justify-content: flex-end;
margin-bottom: 16px;
.view-div {
display: flex;
gap: 12px;
.view-btn {
&:first-of-type {
width: 139px;
height: 36px;
display: flex;
justify-content: flex-start;
padding-left: 18px;
align-items: center;
border-radius: 80px;
box-shadow: 0 0 0 1px #C0C0C0;
color: #3366FF;
font-size: 14px;
font-weight: 500;
line-height: 19.6px;
background-image: var(--download-icon);
background-repeat: no-repeat;
background-position-x: 82%;
background-position-y: center;
}
&:last-of-type {
width: 139px;
height: 36px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 80px;
box-shadow: 0 0 0 1px #C0C0C0;
color: #3366FF;
font-size: 14px;
font-weight: 500;
line-height: 19.6px;
}
}
}
}
.calendar-view-type {
border-radius: 16px;
box-shadow: 0 0 0 1px #BDBDBD;
.calendar-container {
display: flex;
flex-direction: column;
gap: 40px;
>div {
padding-left: 40px;
padding-right: 40px;
&.calendar-header {
padding-top: 40px;
display: flex;
justify-content: center;
align-items: center;
gap: 40px;
.arrow {
width: 24px;
height: 24px;
background-image: var(--arrow-icon);
background-repeat: no-repeat;
background-position: center center;
font-size: 0;
cursor: pointer;
&:last-of-type {
transform: rotate(-180deg)
}
}
>div {
.faded {
display: none;
}
#current-calendar-month {
font-size: 40px;
font-weight: 700;
line-height: 56px;
color: #3366FF;
background-image: var(--calendar-icon);
background-repeat: no-repeat;
background-position: center right;
padding-right: 40px;
}
}
}
&[row] {
gap: 48px;
padding-bottom: 112px;
position: relative;
table {
border-collapse: collapse;
width: 770px;
flex-shrink: 0;
position: relative;
&:before {
content: '';
height: 100%;
width: 1px;
background-color: #DCDCDC;
display: block;
position: absolute;
top: 0;
right: -24px;
}
&.calendar-table {
thead {
tr {
background-color: #EDF1FF;
border-bottom: 1px solid #DDDDDD;
th {
padding-top: 12px;
padding-bottom: 12px;
text-transform: uppercase;
&:first-of-type {
border-top-left-radius: 8px;
}
&:last-of-type {
border-top-right-radius: 8px;
}
}
}
}
tbody {
tr {
td {
height: 96.5px;
padding-top: 12px;
text-align: center;
font-size: 16px;
font-weight: 400;
line-height: 22.4px;
vertical-align: top;
.event-dots {
position: relative;
display: flex;
justify-content: center;
gap: 4px;
margin-top: 4px;
.event-dot {
width: 10px;
height: 10px;
border-radius: 100%;
}
.event-more-dots {
position: absolute;
bottom: -30px;
}
}
}
}
}
}
}
[col] {
width: calc(100% - 770px);
justify-content: space-between;
[col] {
width: 100%;
gap: 36px;
.calendar-category-items {
display: flex;
gap: 48px;
margin-top: 9px;
.calendar-category-item {
position: relative;
&:before {
content: "";
width: 1px;
height: 16px;
background-color: #DCDCDC;
display: block;
position: absolute;
right: -24px;
top: 6px;
}
&:last-of-type {
&:before {
display: none;
}
}
.calendar-category-btn {
padding: 0;
font-size: 20px;
font-weight: 700;
line-height: 28px;
color: #999999;
}
&.selected {
position: relative;
.calendar-category-btn {
color: #3366FF;
&:before {
content: '';
width: 100%;
height: 2px;
background-color: #3366FF;
display: block;
position: absolute;
bottom: -4px;
left: 0;
}
}
}
}
}
.event-list {
ul {
display: flex;
flex-direction: column;
gap: 48px;
&#event-items {
margin: 0;
.event-item {
display: flex;
gap: 20px;
height: 55px;
position: relative;
&:before {
content: "";
width: 100%;
height: 1px;
background-color: #DCDCDC;
position: absolute;
bottom: -24px;
left: 0;
}
.event-category {
.category {
width: 70px;
height: 28px;
border: 4px;
color: #fff;
padding: 0;
}
}
>div {
&:last-of-type {
display: flex;
flex-direction: column;
gap: 8px;
>div {
.event-date {
font-size: 16px;
font-weight: 400;
line-height: 22.4px;
color: #444444;
}
}
.event-title {
font-size: 18px;
font-weight: 700;
line-height: 25.2px;
}
}
}
}
}
}
}
}
.toggle-save {
display: flex;
gap: 12px;
justify-content: flex-end;
position: absolute;
bottom: 0;
right: 0;
padding-bottom: 40px;
padding-right: 40px;
.save-btn {
width: 134px;
height: 52px;
padding: 0;
border-radius: 8px;
background-color: #3366FF;
color: #fff;
font-size: 20px;
font-weight: 600;
}
}
}
}
}
}
}
}