:root{--theme-color:#5b4a96;--secondary-theme-color:rgb(187, 186, 186);--background-color:#f9f9f9;--highlight-color:#5b4a96;--animation-duration:0.3s;--animation-timing:ease-in-out}.container{width:100%;display:flex;flex-direction:column;align-items:center}.flatpickr-calendar{border-radius:5px;box-shadow:0 2px 4px rgba(0, 0, 0, 0.1)}.flatpickr-months{background-color:var(--theme-color);border-top-left-radius:5px;border-top-right-radius:5px}.flatpickr-month{height:40px;margin:5px}.flatpickr-current-month{color:white;font-size:16px}.flatpickr-monthDropdown-months{font-size:16px}.flatpickr-prev-month svg,
.flatpickr-next-month
svg{stroke:white;stroke-width:2}.flatpickr-prev-month,.flatpickr-next-month{top:5px;margin:5px}.flatpickr-weekdays{background-color:#fff}.flatpickr-weekday{font-size:14px;color:#333}.flatpickr-day{border:none;margin:0;font-size:14px}.flatpickr-day.selected{background-color:var(--theme-color) !important;border:white;color:#fff !important}.flatpickr-day.today{background-color:var(--secondary-theme-color) !important;color:#333 !important}.flatpickr-day:hover{background-color:#f0f0f0}.date-picker-container{margin-bottom:20px}.date-picker-wrapper{position:relative;display:inline-block}.custom-input{width:120px;padding:10px
10px 10px 30px;border:2px
solid var(--theme-color);border-radius:5px;font-size:16px;transition:all var(--animation-duration) var(--animation-timing)}.calendar-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:20px;height:20px;pointer-events:none}.box{width:100%;min-height:6200px;position:relative}.box
ul{list-style-type:none;margin:0;padding:0;position:relative;transition:all 0.5s linear}.box ul:before{content:"";display:block;height:100%;border:1px
solid var(--theme-color);position:absolute;left:36px;animation:drawLine 2.1s ease-in-out forwards}.box ul
li{position:relative;margin:20px
0 35px 60px;padding:15px
20px;background:#f9f7fd;color:#404040;border:1px
solid rgb(219, 219, 219);border-radius:10px;line-height:20px;opacity:0;transform:translateZ(0);will-change:transform, opacity;backface-visibility:hidden;animation:slideDown var(--animation-duration) var(--animation-timing)
forwards}.box ul li>span{content:"";display:block;width:10px;height:10px;border-radius:50%;background:white;border:2px
solid var(--theme-color);position:absolute;left:-31px;top:50%;transform:translateY(-50%)}.box
.title{font-size:90%;font-weight:700;text-transform:uppercase;margin-bottom:5px;color:var(--theme-color)}.box
.info{font-size:85%}.box .time
.year{position:absolute;left:-84px;top:0;color:var(--theme-color);font-size:120%;font-weight:bold}.box .time .rest-of-date{position:absolute;right:calc(100% + 40px);width:60px;top:50%;color:#434343;transform:translateY(-50%);font-size:80%;font-weight:bold;text-align:right}.timeline-icon{position:absolute;top:10px;right:10px;font-size:24px;color:var(--theme-color)}.timeline-image{max-width:80px;max-height:80px;margin-left:10px;border-radius:5px;border:2px
solid white;aspect-ratio:1}.past-date{position:relative}.past-date::after{content:"";position:absolute;inset:0;width:100%;height:100%;background-color:rgba(255, 255, 255, 0.5);pointer-events:none;border-radius:10px}.box ul li.upcoming-event{border:2px
solid var(--highlight-color);box-shadow:0 0 10px #ababab}.box ul li.upcoming-event::before{content:"Kommande";position:absolute;top:-25px;left:10px;background-color:var(--highlight-color);color:white;padding:2px
8px;font-size:12px;font-weight:bold;border-radius:4px 4px 0 0}.error-message{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0, 0, 0, 0.1);margin:20px;padding:20px;text-align:center}.error-content{display:flex;flex-direction:column;align-items:center;gap:10px}.error-icon{font-size:24px}.error-text{color:#e74c3c;font-size:16px}@keyframes
drawLine{from{height:0}to{height:100%}}@keyframes
slideDown{from{transform:translate3d(0, -20px, 0);opacity:0}to{transform:translate3d(0, 0, 0);opacity:1}}