/* * Citizen * * Module: mediawiki.skinning.content.tables * Version: REL1_39 * * Date: 2024-02-26 */ // TODO: Revisit on MW 1.43 since Minerva table styles are merged upstream .wikitable { display: block; max-width: max-content; // Needed for the border margin: var( --space-md ) 0; overflow-x: auto; font-size: var( --font-size-small ); border-collapse: collapse; border-color: var( --border-color-base ); border-radius: var( --border-radius-medium ); box-shadow: var( --box-shadow-border ); caption { padding: var( --space-xs ) var( --space-sm ); font-size: var( --font-size-medium ); font-weight: var( --font-weight-semibold ); color: var( --color-emphasized ); text-align: start; } tbody tr { &:hover { background-color: var( --background-color-button-quiet--hover ); } } th { text-align: start; } th, td { padding: var( --space-xs ) var( --space-sm ); } tr { &:first-of-type { th, td { &:first-child { border-left-width: 0; border-top-left-radius: var( --border-radius-medium ); } &:last-child { border-right-width: 0; border-top-right-radius: var( --border-radius-medium ); } } } &:last-of-type { th, td { &:first-child { border-left-width: 0; border-bottom-left-radius: var( --border-radius-medium ); } &:last-child { border-right-width: 0; border-bottom-right-radius: var( --border-radius-medium ); } } } } /* Add border separator between caption, tr, thead, tbody, tfoot */ > :where( caption, tr, thead, tbody, tfoot ):not( [ hidden ] ) ~ :where( caption, tr, thead, tbody, tfoot ):not( [ hidden ] ), > :where( thead, tbody, tfoot ) > :where( tr, thead, tbody, tfoot ):not( [ hidden ] ) ~ :where( tr, thead, tbody, tfoot ):not( [ hidden ] ) { border-top: var( --border-width-base ) solid var( --border-color-base ); } /* Reset border radius between thead tbody, tbody tfoot, etc. */ > :where( thead, tbody, tfoot ):has( + :where( thead, tbody, tfoot ):not( :empty ) ) { tr:last-of-type { th, td { &:first-child { border-bottom-left-radius: var( --border-radius-sharp ); } &:last-child { border-bottom-right-radius: var( --border-radius-sharp ); } } } } > :where( thead, tbody, tfoot ) + :where( thead, tbody, tfoot ):not( :empty ) { tr:first-of-type { th, td { &:first-child { border-top-left-radius: var( --border-radius-sharp ); } &:last-child { border-top-right-radius: var( --border-radius-sharp ); } } } } &--border { tr { > :is( th, td ):not( [ hidden ] ) { border-right: var( --border-width-base ) solid var( --border-color-base ); border-left: var( --border-width-base ) solid var( --border-color-base ); &:first-child { border-left: 0; } &:last-child { border-right: 0; } } } } &--stripe { tbody tr:nth-child( even ) { background-color: var( --color-surface-2 ); } } }