.card {
    padding: 0.5rem;
}

/* -----------------------------
     LOGIC: Tab Switching Mechanism
   -----------------------------
*/
.tabset>input[type="radio"] {
    position: absolute;
    left: -200vw;
}

.tabset .tab-panel {
    display: none;
}

/* This logic handles switching tabs based on which radio button is checked.
    It assumes a specific order of elements (input -> label -> input -> label).
*/
.tabset>input:first-child:checked~.tab-panels>.tab-panel:first-child,
.tabset>input:nth-child(3):checked~.tab-panels>.tab-panel:nth-child(2),
.tabset>input:nth-child(5):checked~.tab-panels>.tab-panel:nth-child(3),
.tabset>input:nth-child(7):checked~.tab-panels>.tab-panel:nth-child(4),
.tabset>input:nth-child(9):checked~.tab-panels>.tab-panel:nth-child(5),
.tabset>input:nth-child(11):checked~.tab-panels>.tab-panel:nth-child(6) {
    display: block;
}

/*
    -----------------------------
    STYLING: Theme-Aware Colors
    -----------------------------
*/

body {
    font: 16px/1.5em "Overpass", "Open Sans", Helvetica, sans-serif;
    font-weight: 300;
    padding: 0px;
    color: var(--theme-foreground);
}

.tabset>label {
    position: relative;
    display: inline-block;
    padding: 10px 15px;
    border: 1px solid transparent;
    border-bottom: 0;
    cursor: pointer;
    font-weight: 600;
    color: var(--theme-foreground-muted);
}

input:focus-visible+label {
    outline: 2px solid var(--theme-foreground-focus);
    border-radius: 3px;
}

.tabset>label:hover,
.tabset>input:focus+label,
.tabset>input:checked+label {
    color: var(--theme-foreground);
}

.tabset>input:checked+label {
    border-color: var(--theme-foreground-faintest);
    border-bottom: 1px solid var(--theme-background);
    margin-bottom: -1px;
    background-color: var(--theme-background);
}

.tab-panel {
    padding: 0px 0;
    border-top: 1px solid var(--theme-foreground-faintest);
}