
This will be my 3rd or 4th "I think I've done something dumb that should be obvious" post, but here goes anyway :) : My custom sheet has been set up for a while with 2 tabs (Character and Vehicle) using the radio-button method I've seen on this forum a lot. I'm getting close to where I want to start a game with it and invite some players in to test it, so today I decided "I'll do something easy and add a 'Notes' tab as the first tab so I can put in status updates, known problems, etc. for testers to be aware of. The good news is that the original 2 tabs still display their contents just fine... but the new one comes up blank. HTML: < input type = "radio" name = "attr_tab" class = "tab notes-tab" value = "1" checked /> < span class = "tab" > Notes </ span > < input type = "radio" name = "attr_tab" class = "tab char-tab" value = "2" /> < span class = "tab" > Character </ span > < input type = "radio" name = "attr_tab" class = "tab veh-tab" value = "3" /> < span class = "tab" > Vehicle </ span > < div class = "tab-content notes-tab" > Notes Lorem ipsum etc </ div > < div class = "tab-content char-tab" > ... etc Sheet worker: const buttonlist = ["notes","character","vehicle"]; buttonlist.forEach(button => { on(`clicked:${button}`, function() { setAttrs({ sheetTab: button }); }); }); CSS: div.sheet-tab-content { display : none ; } input.sheet-char-tab:checked ~ div.sheet-char-tab , input.sheet-veh-tab:checked ~ div.sheet-veh-tab , input.sheet-notes-tab.checked ~ div.sheet-notes-tab { display : block ; } .charsheet input.sheet-tab { width : 80px ; position : relative ; opacity : 0 ; z-index : 9999 ; } .charsheet span.sheet-tab { /* width and margin-left must be equal the width in sheet-tab above */ width : 80px ; margin-left : -80px ; text-align : center ; display : inline-block ; border-radius : 4px ; border : 1px solid ; background-color : #ede695 ; } input.sheet-tab [ type = "radio" ] :checked + span.sheet-tab { font-weight : bold ; } Any ideas?