@import 'kbd.css';
@import 'table.css';

* { 
    -moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box; 
    box-sizing: border-box; 

    font-family: "Iosevka Web", "PT Mono", monospace;
    font-weight: 200;
    color: var(--color-bg);
}

:root {
    --color-box: #444750;
    --color-bg: #2B2D30;
    --color-light: rgb(232, 232, 232);
    
    --size: min(1vw, 1.25vh);
    --color-5: #83A0A0;
    --color-4: #4C5F6B;
    --color-3: #83A0A0;
    --color-2: #BCA0BC;
    --color-1: #F9B9F2;
}

body {
    height: 100vh;
    margin: 0;
    
    background: var(--color-bg);
}

#canvas {
    display: flex;
    height: 100%;
    margin: 0px calc(var(--size) * 4);

    flex-direction: column;
    justify-content: center;
}

#layout-selector {
    display: flex;
    justify-content: center;
    padding: 0 calc(var(--size) * 5);

    gap: calc(var(--size) / 2);
}

button {
    border: none;
    padding: var(--size);
    cursor: pointer;

    background: var(--color-5);
    font-size: 1.5rem;
    border-radius: calc(var(--size) * .6);

    transition: background-color 200ms, font-weight 200ms;
}

button:hover {
    background: var(--color-2);
}

button:active {
    background: var(--color-1);
    font-weight: 800;
    transition: background-color 200ms, font-weight 200ms;
}

button[aria-checked="true"] {
    font-weight: 800;
    background: var(--color-1);
}

.box {
    margin: calc(var(--size) * 1);

    background: var(--color-box);
    border-radius: calc(var(--size) * .6);
}

.box:has(.heading) {
    padding-inline: calc(var(--size) * 2);
}

.center {
    display: flex;
    
    align-items: center;
    justify-content: center;
}

#pop-ups {
    position: absolute;
    top: 0;

    width: 100%;
    height: 100%;

    background: rgba(0, 0, 0, 0.171);
}

#stat-tooltip {
    background: var(--color-box);
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    padding: 1rem;
    border-radius: 6px;
    pointer-events: none;
    white-space: nowrap;
    z-index: 1000;
}

#stat-tooltip > div {
    border: 1px solid var(--color-bg);
    background: var(--color-light);
    padding: 0.5rem;
    border-radius: 6px;
    font-weight: 800;
}

.morphemes {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: calc(var(--size) * 1);
}

.morpheme-wrapper {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0.5rem;
}

.morpheme {
    border: 1px solid var(--color-bg);
    background: var(--color-light);
    padding: 0.5rem;
    border-radius: 6px;
    font-weight: 800;
}

.morpheme-type {
    color: white;
    font-size: 0.8rem;
}

.heading {
    color: var(--color-1);
    font-weight: bold;
    font-size: 1.5rem;
}

p {
    color: white;
}

a {
    color: var(--color-5);
    transition: font-weight 100ms;
}
a:hover {
    color: var(--color-1);
    font-weight: bold;
}