.covid-time-lapse { display: flex; /* gap: 20px; */ line-height: 1.25; font-family: "ÐÇ¿Õ´«Ã½Sans-Regular", sans-serif; height: 500px; background: #fafafa; position: relative; color: #222; min-width: 300px; max-width: 750px; margin: 20px auto; min-height: 246px; overflow: hidden; } .covid-time-lapse .date { display: flex; align-items: center; justify-content: center; font-size: 26px; font-weight: 700; font-family: "Roboto", sans-serif; font-variant-numeric: tabular-nums; margin: 6px auto; } .covid-time-lapse .description { text-align: center; font-size: 13px; } .covid-time-lapse .container { border: none; box-shadow: none; padding: 0; font-weight: normal; margin: 0; position: relative; background-color: white; } .covid-time-lapse .region { font-family: "ÐÇ¿Õ´«Ã½Sans-Bold", sans-serif; cursor: pointer; box-sizing: border-box; display: flex; align-items: center; position: absolute; background-color: #fffaf4; color: #222; font-size: 15px; padding-left: 7px; width: calc(100% - 30px); white-space: nowrap; border: 1px solid #ff880088; } .covid-time-lapse .region > span { margin-left: 8px; font-family: "Roboto", sans-serif; font-variant-numeric: tabular-nums; font-weight: 300; font-size: 11px; } .covid-time-lapse .region.province { background-color: #f4fff7; border: 1px solid #00947b88; /* color: rgb(5, 51, 28); */ } .covid-time-lapse .region.lowlight { filter: saturate(0.5) opacity(0.4); } .covid-time-lapse .region.highlight { filter: none; } .covid-time-lapse .rank { position: absolute; display: flex; align-items: center; justify-content: center; font-family: "Roboto", sans-serif; font-size: 12px; color: #222; font-variant-numeric: tabular-nums; /* border-bottom: 1px dotted #222; */ box-sizing: border-box; } .covid-time-lapse .rank::before { content: "#"; font-size: 0.6rem; padding-right: 2px; } .covid-time-lapse .controls { position: -webkit-sticky; position: sticky; width: 100%; top: 0; z-index: 10; margin: 5px auto 30px; display: flex; align-items: center; justify-content: center; flex-direction: column; /* gap: 12px; */ background: #f3f3f3; padding: 10px 15px 5px; border-radius: 2px; box-shadow: 0 2px 0 2px white; box-sizing: border-box; } .controls .dropdown-container { font-size: 12px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; margin: 8px auto; /* gap: 8px; */ } .covid-time-lapse .controls select { cursor: pointer; font-family: "ÐÇ¿Õ´«Ã½Sans-Bold", sans-serif; font-size: 12px; /* background: rgba(255, 255, 255, 0.7); */ background-color: transparent; padding: 3px 0px; margin: 0 6px; border: none; border-bottom: 1px solid #222; border-radius: 0; -moz-appearance: none; } .covid-time-lapse .controls select.sorted-dropdown { font-size: 12px; } .controls .button-groups { width: 100%; display: flex; align-items: center; justify-content: space-evenly; flex-direction: row; } .controls .button-container { display: flex; align-items: center; justify-content: center; flex-direction: row; min-width: 33%; /* gap: 12px; */ } .button-container.playback { /* gap: 6px; */ } .speed-text { font-family: Roboto, sans-serif; font-weight: 700; display: flex; align-items: center; justify-content: center; font-size: 22px; width: 60px; margin-right: -3px; } .speed-text span { font-weight: 500; font-size: 0.6em; } .controls .line { border-top: 1px solid #eaeaea; width: calc(100% - 40px); margin: 8px auto 6px; } .button-container .button { cursor: pointer; display: flex; align-items: center; justify-content: center; text-align: center; border: none; padding: 6px; border-radius: 50px; background: #d3d3d3; margin: 0 4px; user-select: none; } .button.minimize { cursor: pointer; position: absolute; top: 0px; right: 0px; border: none; background: none; padding-top: 15px; } .button-container .button.minor { padding: 4px; } .button-container .button:hover { background: #c3c3c3; } .button-container .button:active { background: #b3b3b3; } .slider-container { display: flex; align-items: center; justify-content: center; width: 100%; margin: 12px auto; } .slider-container .slider { width: 100%; } .slider-container .slider { -webkit-appearance: none; appearance: none; width: 100%; height: 8px; background: #d3d3d3; opacity: 0.7; -webkit-transition: 0.2s; transition: opacity 0.2s; border-radius: 10px; } .slider-container .slider:hover { opacity: 1; /* Fully shown on mouse-over */ } .slider-container .slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 20px; height: 20px; border-radius: 20px; background: #005fff; cursor: pointer; } .slider-container .slider::-moz-range-thumb { width: 20px; height: 20px; border-radius: 20px; background: #005fff; cursor: pointer; } .covid-time-lapse canvas { pointer-events: none; position: absolute; width: 100%; height: 200%; left: 0; bottom: 0; z-index: -1; } .chart { z-index: -1; position: absolute; left: 0; width: 100%; display: flex; align-self: flex-end; align-items: baseline; } .chart .bar { min-width: 1px; background: linear-gradient( to top, #ffbd69, #f37121 15px, #f37121 15px, #c70039 30px, #c70039 30px ); } .province .chart .bar { background: linear-gradient( to top, #76b1a9, #00947b 15px, #00947b 15px, #11584d 30px, #11584d 30px ); } .loading { margin: 0 auto; border: 5px solid #dadada; border-top: 5px solid #0060ff; border-radius: 50%; width: 30px; height: 30px; animation: spin 1s ease-in-out infinite; display: flex; align-self: center; justify-self: center; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }