* { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: sans-serif; } .visualization { height: 700px; margin: 10px auto; position: relative; text-align: center; width: 1100px; } .events { bottom: 0; font-size: 0; left: 0; position: absolute; width: 200px; } .event-item { cursor: pointer; display: inline-block; height: 38px; margin: 1px; overflow: hidden; padding: 4px; position: relative; vertical-align: baseline; width: 48px; } .event-year { background: #fff; border: 1px solid #d5d5d5; font-size: 13px; height: 30px; left: 4px; line-height: 30px; position: absolute; top: 4px; transition: top 0.1s linear; width: 40px; z-index: 1; } .event-flag { font-size: 30px; z-index: 0; } .event-item:hover .event-year { top: -30px; } .tourney { background: rgba(10, 240, 120, 0.1); left: 0; position: absolute; top: 0; } .tourney-flag { border: 1px solid #ddd; font-size: 150px; } .tourney-country { font-size: 20px; font-style: italic; } .tourney-year { font-size: 40px; font-style: italic; } .diagram { background: rgba(150, 100, 200, 0.1); font-size: 10px; margin: 0 auto; position: relative; top: 0; width: 700px; z-index: 10; } .group-tick line { stroke: #ddd; } .ribbon { fill-opacity: 0.4; stroke-width: 1; stroke-opacity: 0.1; } .ribbon:hover { fill-opacity: 1; stroke-opacity: 1; } .sort { background: rgba(10, 120, 240, 0.1); position: absolute; right: 0; text-align: right; top: 0; width: 200px; z-index: 1; } .sort-item { border: 1px solid brickred; cursor: pointer; font-size: 13px; line-height: 34px; padding: 0 10px; } .sort-item:hover { background: yellow; } .sort-item.active { background: red; } .sort-text { display: inline-block; } .sort-tiny { display: inline-block; font-size: 9px; margin-left: 20px; text-align: right; text-transform: uppercase; width: 30px; } .rounds { background: rgba(240, 120, 10, 0.1); bottom: 0; color: #000; position: absolute; right: 0; text-align: right; width: 200px; z-index: 1; } .round-item { cursor: pointer; font-size: 13px; line-height: 34px; opacity: 0.2; padding: 0 10px; } .round-item.active { opacity: 1; } .round-item:hover { background: yellow; } .round-text { display: inline-block; } .round-tiny { display: inline-block; font-size: 9px; margin-left: 20px; text-align: right; text-transform: uppercase; width: 30px; }