:root {
    --font-family: 'Montserrat', sans-serif;
    --font-weight: 300;
    --link-color: #00aaff;
    --link-deco: none;
    --link-weight: 100;
    --letter-spacing: 0px;
    --behnke-basic-scale: 0.85;
    --fs-small: calc(0.75 * var(--behnke-smallest-font-size));
}

.hidden {
    display: none;
}

html, body, *  {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    letter-spacing: var(--letter-spacing);; 
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

h1 {
	font-size: var(--behnke-header-font-size) !important;
	color: var(--behnke-design);
	margin: 2rem 0 1rem;
	padding-bottom: calc(0.25 * var(--behnke-basic));
	border-bottom: calc(0.1 * var(--behnke-basic)) solid var(--behnke-medium-gray);
	font-weight: 500;
}

h2 {
	font-size: var(--behnke-big-font-size);
	font-weight: 400;
	color: var(--behnke-black);
}

h3 {
	font-size: var(--behnke-bigger-font-size);
	font-weight: 300;
	color: var(--behnke-medium-black);
}

h4, h5, h6 {
    font-size: var(--behnke-medium-font-size);
}

strong {
	font-weight: 500;
	font-size: calc(1.075 * var(--behnke-normal-font-size));
}

a {
	color: var(--link-color);
	text-decoration: var(--link-deco);
	font-weight: var(--link-weight);
	transition: color 0.15s ease;
}

a:focus,
a:hover {
    color: var(--behnke-design);
}

p {
    font-size: var(--behnke-normal-font-size);
	margin-bottom: var(--behnke-normal-font-size);
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    letter-spacing: var(--letter-spacing);
}

/*
 *  Design of Table Elements
 */

table {
    border-collapse: collapse;
    width: 100%;
    max-width: 100%;
    background-color: var(--behnke-light-black)
}

thead {
    background-color: var(--behnke-design);
    color: var(--behnke-white);
    text-align: left;
}

thead th {
    padding: var(--behnke-basic);
    font-weight: 600;
}

tbody tr {
    border-bottom: 1px solid var(--behnke-medium-gray);
    transition: background-color 0.2s ease-in-out;
}

tbody tr:hover,
tbody tr:nth-child(even):hover {
    background-color: var(--behnke-hover);
    cursor: pointer;
}

tbody td {
    padding: var(--behnke-basic);
}

tbody tr:nth-child(even) {
    background-color: var(--behnke-white);
}

.table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

table {
    border-radius: 8px;
    overflow: hidden;
}

@media (max-width: 640px) {
    thead {
        display: none;
    }

    tbody td {
        display: block;
        text-align: right;
        position: relative;
    }

    tbody td::before {
        content: attr(data-label);
        float: left;
        text-transform: uppercase;
    }

    tbody tr {
        margin-bottom: calc(2 * var(--behnke-basic));
        display: block;
        border-bottom: 2px solid #e5e7eb;
    }
}

/* ── Page meta bar (last modified + views) ─────────────────────────────── */

.wiki-page-meta {
    display: flex;
    flex-wrap: wrap;
    gap: calc(0.75 * var(--behnke-basic));
    align-items: center;
    margin-top: calc(2.5 * var(--behnke-basic));
    padding-top: calc(0.75 * var(--behnke-basic));
    border-top: 1px solid #e5e7eb;
    font-size: 0.78rem;
    color: #9ca3af;
}

.wiki-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 0.3em;
}

.wiki-meta-icon {
    flex-shrink: 0;
    vertical-align: middle;
    opacity: 0.7;
}

@media print {
    .wiki-page-meta { display: none; }
}
