﻿* {
    padding: 0;
    margin: 0;
    overflow: hidden;
    box-sizing: border-box;
    user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}

html, body {
    height: 100%;
    padding-top: env(safe-area-inset-top);
    padding-right: max(env(safe-area-inset-top), 10px);
    padding-bottom: env(safe-area-inset-top);
    padding-left: max(env(safe-area-inset-top),10px);
}

body {
    text-align: center;
    background-color: #F6F6F6;
    color: #333;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

h1 {
    font-size: 74pt;
    margin-top: 50px;
    margin-bottom: 100px;
}

.periodic-table {
    border: 0px solid #333;
    margin: 0 auto;
    grid-gap: 5px;
    display: grid;
    grid-template-columns: repeat(19, 1fr);
    top: 100px;
    width: fit-content;
}

    .periodic-table div.element {
        background-color: #ddd;
        text-align: center;
        width: 40px;
        height: 50px;
        border: 2px solid #ddd;
    }

        .periodic-table div span {
            display: block;
        }

    .periodic-table div span.name {
        font-size: 10px;
        display: none;
    }
    
        .periodic-table div span.symbol {
            font-size: 21pt;
            position: relative;
        }

        .periodic-table div span.weight {
            display: none;
        }

    .periodic-table div.element.highlight {
        border: 2px solid red;
    }

    .periodic-table div.element-placeholder {
        text-align: center;
        font-weight: bold;
        align-content: center;
    }

    .periodic-table.zoom1 div span.number {
        font-size: 10pt;
        position: relative;
        color: grey;
    }

    .periodic-table.zoom1 div span.symbol {
        font-size: 10pt;
        position: relative;
        transition: font-size linear 200ms, background-color linear 200ms;
    }

    .periodic-table.zoom1 div span.symbol {
        font-size: 12pt;
        transition: font-size linear 200ms, background-color linear 200ms;
    }
    .periodic-table.zoom1 div span.number {
        font-size: 10pt;
        position: relative;
    }

    .periodic-table.zoom2 div span.number {
        font-size: 4pt;
        float: left;
        width: 100%;
        text-align: left;
    }

    .periodic-table.zoom2 div span.symbol {
        font-size: 10pt;
        transition: font-size linear 200ms, background-color linear 200ms;
        margin-top: 9px;
    }

    .periodic-table.zoom2 div span.name {
        font-size: 5px;
        display: block;
        transition: font-size linear 200ms, background-color linear 200ms;
    }

    .periodic-table.zoom2 div span.symbol {
        font-size: 10pt;
        transition: font-size linear 200ms, background-color linear 200ms;
    }

    .periodic-table.zoom2 div span.weight {
        display: none;
    }


    .periodic-table.zoom3 div span.number {
        font-size: 4pt;
        float: left;
        width: 100%;
        text-align: left;
    }

    .periodic-table.zoom3 div span.symbol {
        font-size: 10pt;
        transition: font-size linear 200ms, background-color linear 200ms;
        margin-top: 9px;
    }

    .periodic-table.zoom3 div span.name {
        font-size: 5px;
        display: block;
        transition: font-size linear 200ms, background-color linear 200ms;
    }

    .periodic-table.zoom3 div span.symbol {
        font-size: 10pt;
        transition: font-size linear 200ms, background-color linear 200ms;
    }

    .periodic-table.zoom3 div span.weight {
        display: block;
        font-size: 3px;
        transition: font-size linear 200ms, background-color linear 200ms;
        float: left;
        margin-top: 9px;
        color: grey;
    }

    .periodic-table.metal-grouped div.group-metal {
        background-color: #C7D9DD;
        border-color: #C7D9DD !important;
    }
    .periodic-table.metal-grouped div.group-nonmetal {
        background-color: #D5E5D5;
        border-color: #D5E5D5;
    }
    .periodic-table.metal-grouped div.group-metaloid {
        background-color: #EEF1DA;
        border-color: #EEF1DA;
    }