fabcal/static/style.css

170 lines
3.5 KiB
CSS
Raw Normal View History

2022-03-27 23:24:59 +02:00
:root {
--calendar-fablab-red: #D13F34;
--calendar-fablab-blue: #16A3C4;
--calendar-border: 1px solid #999;
}
body {
color: black;
/* inspired by fablab-altmuehlfranken.de */
font-weight: 100;
line-height: 1.3;
font-size: 9pt;
height: auto;
2022-11-21 04:05:47 +01:00
overflow: auto;
/*background: repeating-linear-gradient(135deg, #eee, #eee 100px, #ccc 100px, #ccc 200px);*/
2022-03-27 23:24:59 +02:00
}
.calendar {
width: 100%;
margin: 0 auto;
}
.calendar-date {
margin-bottom: 8px;
display: flex;
align-items: stretch;
flex-direction: row;
}
.calendar-date-date {
border: var(--calendar-border);
text-align: center;
border-radius: 5px;
margin-right: 8px;
flex: 35px 0 0;
height: 100%;
2022-11-21 03:45:43 +01:00
background-color: white;
2022-03-27 23:24:59 +02:00
}
.calendar-date-month {
background-color: var(--calendar-fablab-red);
color: white;
padding: 3px 0;
}
.calendar-date:nth-of-type(2n) .calendar-date-month {
2022-11-21 14:03:44 +01:00
background-color: var(--calendar-fablab-blue);
2022-03-27 23:24:59 +02:00
}
.calendar-date-day {
font-size: 13pt;
font-weight: 700;
padding-top: 3px;
}
.calendar-date-weekday {
padding-bottom: 3px;
}
.calendar-events {
flex-grow: 100;
vertical-align: top;
}
.calendar-event {
background-color: white;
border: var(--calendar-border);
border-radius: 5px;
padding: 5px;
margin-bottom: 5px;
filter: brightness(1);
display: flex;
align-items: stretch;
flex-direction: row;
justify-content: center;
}
.calendar-event-time {
text-align: center;
padding: 5px 8px 5px 5px;
margin: -5px 0 -5px -5px;
flex: 0 0 45px;
background-color: #ddd;
}
.calendar-event-timesep {
line-height: 1.2;
}
.calendar-event-timesep:before {
display: block;
content: "⋮";
}
.calendar-event-description {
flex-grow: 100;
margin: 0 5px;
word-break: break-word;
word-wrap: break-word;
hyphens: auto;
}
.calendar-event-description, .calendar-event-time {
display: flex;
flex-direction: column;
justify-content: center;
}
2022-11-21 03:45:43 +01:00
.calendar-event-description p {
margin-bottom: 0.5em;
}
.calendar-event-description p:last-child {
margin-bottom: 0;
}
2022-03-27 23:24:59 +02:00
.calendar-event-type {
flex: 0 0 12px;
margin: -5px -5px -5px 0;
}
2022-11-21 04:05:47 +01:00
.calendar-subscription-buttons {
text-align: center;
}
2022-03-27 23:24:59 +02:00
@media only screen and (max-width: 960px) {
.calendar-event {
flex-direction: column;
}
.calendar-event-time {
flex-direction: row;
padding: 5px 8px 5px 5px;
margin: -5px -5px 5px -5px;
flex: 0 0 12px;
align-content: center;
justify-content: center;
}
.calendar-event-type {
flex: 0 0 12px;
margin: 5px -5px -5px -5px;
}
.calendar-event-timesep {
display: block;
}
.calendar-event-timesep:before {
display: block;
content: "...";
padding: 0 3px;
}
}
.calendar-date-date, .calendar-event {
/* make sure border radius clips content */
overflow: hidden;
}
details.calendar-event-details > summary {
text-decoration: underline dotted black;
2022-11-21 14:03:44 +01:00
cursor: pointer;
2022-03-27 23:24:59 +02:00
}
.calendar-popover-content > * {
margin: 5px 0;
}
.calendar-popover-entry {
display: flex;
margin: 5px 0;
}
.calendar-popover-entry-icon {
flex: 0 0 18px;
}
/* CSS-only "fake soft open", might be replaced something more sophisticated in the future */
details.calendar-event-details[open] summary ~ * {
animation: calendar-event-details-sweep .5s ease-in-out;
}
@keyframes calendar-event-details-sweep {
0% {opacity: 0; transform: translateY(-10px)}
100% {opacity: 1; transform: translateY(0)}
}