@import url("https://code.highcharts.com/css/highcharts.css");

/* ibm-plex-sans-100 - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 100;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-100.woff2") format("woff2");
}

/* ibm-plex-sans-200 - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 200;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-200.woff2") format("woff2");
}

/* ibm-plex-sans-300 - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 300;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-300.woff2") format("woff2");
}

/* ibm-plex-sans-regular - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 400;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-regular.woff2") format("woff2");
}

/* ibm-plex-sans-500 - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 500;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-500.woff2") format("woff2");
}

/* ibm-plex-sans-600 - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 600;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-600.woff2") format("woff2");
}

/* ibm-plex-sans-700 - latin */
@font-face {
    font-display: swap;
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 700;
    src: url("https://www.highcharts.com/samples/graphics/cyber-monday/fonts/ibm-plex-sans-v19-latin-700.woff2") format("woff2");
}

body,
#demo-content {
    /* stylelint-disable max-line-length */
    background: var(--diamond, linear-gradient(to bottom right, #474554 5%, #1f1e24 50%) bottom right / 50% 50% no-repeat, linear-gradient(to bottom left, #474554 5%, #1f1e24 50%) bottom left / 50% 50% no-repeat, linear-gradient(to top left, #474554 5%, #1f1e24 50%) top left / 50% 50% no-repeat, linear-gradient(to top right, #474554 5%, #1f1e24 50%) top right / 50% 50% no-repeat);
    /* stylelint-enable */
    background-color: transparent;
    margin: 0;

    /* background-color: black;
    color: white; */
}

form {
    margin-top: 800px;
}

#promo {
    position: relative;
}

#sale {
    position: absolute;
    z-index: 1000;
    left: -70px;
    top: -82px;
    width: 148px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#sale img {
    width: auto;
    margin-left: 0;
    margin-top: 0;
    color: white;
}

#sale #discount {
    margin-bottom: 10px;
}

#sale #logo-type {
    margin-bottom: 12px;
}

#sale #icon {
    display: none;
}

#sale p {
    font-size: 20px;
    margin: -10px 0 0;
    color: #fff;
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
}

#sale #dash-button {
    background-color: #047857;
    padding: 4px 8px;
    color: white;
    border-radius: 4px;
    margin: 4px 20px;
    width: auto;
    display: block;
    justify-self: center;
}

#sale #dash-button a {
    color: white;
    text-decoration: none;
    font-size: 0.6rem;
    padding-top: 4px;
    display: block;
}

#sale #date {
    font-size: 11px;
    text-transform: uppercase;
    margin: 30px 0 0;
    color: #fff;
    width: 100%;
    font-weight: bold;
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
}

#sale span {
    display: none;
}

#sale #terms.labels span.text,
#sale #terms.labels a {
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
    color: #fff;
    font-weight: 300;
    font-size: 0.65rem;
    opacity: 1;
}

#venn {
    width: 100%;
    max-height: 800px;
    position: absolute;
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
    text-align: center;
}

.venntip {
    display: flex;
    flex-direction: column;
    width: 230px;
    padding-bottom: 6px;
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
}

.venntip #tip-title {
    padding: 2px;
    display: flex;
    gap: 6px;
    align-items: center;
}

.venntip #tip-title span.title {
    font-weight: 700;
    font-size: 1.2em;
    padding: 2px;
}

.venntip img {
    max-width: 32px;
    max-height: 32px;
}

.highcharts-container {
    height: 400px;
}

.highcharts-venn-series {
    transform: translateY(-40px);
}

.highcharts-background {
    fill: transparent;
}

/* tooltip */

.tip {
    color: #f0f0f0;
    width: 100px;
    white-space: pre-wrap;
    margin: 0;
    padding: 2px 0;
}

.tipheader {
    font-size: 11px;
    padding: 0;
    margin: 0;
    color: #f0f0f0;
}

.tip .tip-box,
#tip {
    fill: #46465c;
    stroke: transparent;
    color: #f0f0f0;
    max-width: 200px;
    width: 200px;
}

#tip {
    background-color: #46465c;
    border-radius: 4px;
    border: 1px solid #acabba;
    padding: 12px;
    font-size: 0.8rem;
    line-height: 1rem;
    position: absolute;
    left: -90px;
    top: 90px;
    opacity: 0;
    visibility: hidden;
    z-index: 100;
    max-width: 300px;
    width: 300px;
}

#tip a {
    color: #f0f0f0;
}

#tip a:hover {
    color: #ccc;
}

.highcharts-tooltip-box {
    stroke-width: 1px;
    fill: #46465c;
    stroke: #acabba;
    fill-opacity: 1;
}

.highcharts-tooltip text {
    fill: #f0f0f0 !important;
    white-space: normal;
}

.highcharts-tooltip span {
    white-space: normal !important;
    color: white;
    font-size: 1em;
}

.highcharts-tooltip span a {
    cursor: pointer;
    color: white;
    pointer-events: all;
}

.highcharts-tooltip span a:hover {
    color: #ccc;
}

/* data labels */

.highcharts-label-box.highcharts-data-label-box {
    stroke: transparent;
    fill: transparent;
}

.labels {
    text-align: center;
}

.labels span.text {
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
    color: #000;
    font-weight: 300;
    font-size: 0.8rem;
    opacity: 0;
}

.labels span.text:hover {
    font-weight: 600;
    cursor: pointer;
}

.labels img {
    margin-top: 40px;
}

.highcharts-data-label.light span {
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
    color: #edecf9;
    font-weight: 300;
    font-size: 0.8rem;
}

#curve img {
    width: 45px;
    height: 35px;
}

#money img {
    width: 40px;
    height: 35px;
}

#dataviz img {
    width: 30px;
    height: 44px;
    margin-top: 65px;
    margin-left: -10px;
}

#customize img {
    width: 37px;
    height: 30px;
}

#products span {
    color: #fff;
}

#products img {
    width: 35px;
    height: 35px;
    margin-top: 80px;
}

#collection img {
    width: 188px;
    height: 31px;
}

#creativity img {
    width: 30px;
    height: 43px;
}

#frameworks span {
    color: #fff;
}

#frameworks img {
    width: 32px;
    height: 40px;
    margin-left: -8px;
}

#bigdeal {
    width: 200px;
}

#bigdeal img {
    width: 190px;
    height: 97px;
    margin-left: 10px;
    margin-top: 70px;
}

#bigdeal span.text {
    font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
    fill: url(#g965) !important;
    color: white;
    font-size: 1.2em;
    font-weight: 500;
    display: block;
    width: 200px;
    white-space: normal;
}

.highcharts-label-box.highcharts-data-label-box {
    stroke: transparent;
}

.highcharts-series-inactive {
    opacity: 1 !important;
}

.highcharts-venn-series .highcharts-point {
    fill-opacity: 1;
    stroke-opacity: 0;
}

.highcharts-venn-series .highcharts-point {
    /* transform: scale(1, 0.8); */
    transform-origin: center;
    stroke: #000;
    stroke-width: 0.5px;
    stroke-opacity: 1;
}

/* bottom */
.highcharts-series-group .highcharts-venn-series circle.highcharts-point:nth-of-type(1) {
    fill: url(#g964);
}

.highcharts-series-group .highcharts-venn-series circle.highcharts-point:nth-of-type(2) {
    fill: #047857;
}

.highcharts-series-group .highcharts-venn-series circle.highcharts-point:nth-of-type(3) {
    fill: url(#green);
}

.highcharts-series-group .highcharts-venn-series circle.highcharts-point:nth-of-type(4) {
    fill: #545ecc;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(1) {
    fill: #a5acff;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(2) {
    fill: #10b981;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(3) {
    fill: #6ee7b7;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(4) {
    fill: #6e7bed;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(5) {
    fill: #89ddb5;
    opacity: 1;
}

#venn.sale .highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(6) {
    fill: url(#ffflux-gradient);
    fill: black;
    opacity: 1;
    fill-opacity: 1;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(7) {
    fill: #8f98dd;
    opacity: 1;
}

.highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(8) {
    fill: url(#g965);
    opacity: 1;
}

#venn.sale .highcharts-series-group .highcharts-venn-series path.highcharts-point:nth-of-type(8) {
    fill: url(#ffflux-gradient);
    fill: black;
    fill: #1b2129;
    opacity: 1;
    fill-opacity: 1;
}

.highcharts-series-group .highcharts-venn-series .highcharts-point:nth-of-type(9) {
    fill: url(#ffflux-gradient);
    fill-opacity: 1;
}

#venn.sale .highcharts-series-group .highcharts-venn-series .highcharts-point:nth-of-type(9) {
    fill: url(#ffflux-gradient);
    fill: red;
    fill: url(#g964);
    fill-opacity: 1;
}

.highcharts-series-group .highcharts-venn-series .highcharts-point:nth-of-type(10) {
    opacity: 0;
    visibility: hidden;
}

.highcharts-series-group .highcharts-venn-series .highcharts-point:nth-of-type(11) {
    opacity: 0;
    visibility: hidden;
}

#venn.sale .highcharts-series-group .highcharts-venn-series .highcharts-point:nth-of-type(11) {
    opacity: 1;
    visibility: visible;
    fill: url(#ffflux-gradient);
    fill: #1b2129;
}

@media screen  and (min-width: 550px) {
    #sale {
        position: absolute;
        z-index: 1000;
        left: -84px;
        top: -140px;
        width: 168px;
    }

    #sale img {
        width: auto;
        margin-left: 0;
        margin-top: 10px;
    }

    #sale #icon {
        display: block;
        margin-top: -20px;
    }

    #sale #logo-type {
        margin-top: -20px;
    }

    #sale span {
        display: none;
    }

    #sale #date {
        font-size: 12px;
        margin: 10px 0 0;
    }

    #sale #dash-button {
        padding: 6px 8px;
        margin: 10px 12px;
        width: auto;
    }

    #sale #dash-button a {
        font-size: 0.8rem;
        padding-top: 4px;
    }

    #sale p {
        font-size: 28px;
        margin: -10px 0 0;
        color: #fff;
        width: 100%;
        text-align: center;
        font-weight: bold;
        font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
    }

    @media screen  and (min-width: 550px) {
        #tip {
            left: -60px;
            top: 170px;
        }

        .highcharts-container {
            height: 580px;
        }

        #bigdeal img {
            width: 239px;
            height: 146px;
            margin-left: -10px;
        }

        #curve img {
            width: 60px;
            height: 50px;
        }

        #money img {
            width: 50px;
            height: 45px;
        }

        #dataviz img {
            width: 40px;
            height: 54px;
            margin-top: 40px;
            margin-left: -10px;
        }

        #customize img {
            width: 47px;
            height: 40px;
        }

        #products span {
            color: #fff;
        }

        #products img {
            width: 45px;
            height: 45px;
            margin-top: 50px;
        }

        #collection img {
            width: 198px;
            height: 41px;
        }

        #creativity img {
            width: 37px;
            height: 50px;
        }

        #frameworks img {
            width: 42px;
            height: 50px;
            margin-left: unset;
        }
    }

    @media screen  and (min-width: 768px) {
        #tip {
            left: -40px;
            top: 220px;
        }

        #sale {
            position: absolute;
            z-index: 1000;
            left: -122px;
            top: -172px;
            width: 248px;
        }

        #sale #dash-button {
            padding: 8px 12px;
            margin: 10px 35px;
            width: auto;
        }

        #sale #dash-button a {
            color: white;
            text-decoration: none;
            font-size: 0.9rem;
            padding-top: 4px;
            display: block;
        }

        #sale img {
            width: auto;
            margin-left: 0;
            margin-top: -10px;
            justify-self: center;
        }

        #sale #logo-type {
            margin-top: -20px;
            margin-bottom: 10px;
        }

        #sale p {
            font-size: 35px;
        }

        #sale span {
            display: block;
        }

        #sale #date {
            font-size: 14px;
            margin: -18px 0 0;
        }

        #venn {
            margin-top: -80px;
        }

        .venntip img {
            max-width: 42px;
            max-height: 42px;
            padding: 4px;
        }

        .highcharts-container {
            height: 800px;
        }

        .labels span.text {
            opacity: 1;
        }

        .labels img {
            margin-top: 0;
        }

        #bigdeal img {
            width: 239px;
            height: 146px;
            margin-left: -16px;
            margin-top: 12px;
        }

        #dataviz img {
            margin-top: 20px;
        }
    }
}
