html, input, textarea { font-family: "Source Serif", "Georgia", "Noto Emoji", "Dingbats", serif; font-size: 16px; } button, select, option { font-family: "Source Sans", "Verdana", "Noto Emoji", "Dingbats", sans-serif; font-size: 16px; } html, body { margin: 0 } h1 { margin: 16px 0 16px -1px; font-size: 24px; } h2 { margin: 16px 0 16px -1px; font-size: 20px; } a { color: blue; } .w { white-space: nowrap; } .r { text-align: right; } header { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid brown; padding-right: 1em; } header img { display: block; margin: 4px 0 -2px 2px; } header nav { display: flex; flex-wrap: wrap; justify-content: end; } header nav a { display: block; margin: 0 16px; color: black; } header nav a:hover { color: blue; } article { margin: 2em; } article p, article dl, article ul { max-width: 50rem; } div.logo { float: left; margin: 0 20px 5px 0; min-width: 150px; } div.logo img { box-shadow: 1px 2px 4px 0px #0004; } input[type="checkbox"], input[type="radio"] { margin-right: 7px; } input[type="text"], input[type="password"], input[type="email"], textarea { padding: 5px; margin: 5px 0; border: 1px solid black; vertical-align: middle; } input:focus, textarea:focus { outline: 2px solid lightsteelblue; } button, select { margin: 5px 10px 5px 0; padding: 1px 10px; background-color: gainsboro; vertical-align: middle; border: 2px solid; border-color: white darkgray darkgray white; outline: 1px solid black; } button:enabled:active:hover, select:active { border-color: darkgray white white darkgray; padding: 2px 9px 0px 11px; } option { background-color: white; color: black; } button:disabled { color: gray; border-color: gainsboro; outline-color: gray; } .error { color: brown; font-style: italic; white-space: pre-wrap; } .warning { color: brown; } p.warning::before { content: "\26a0"; } /* TABLES */ table { background-color: white; min-width: min(50rem,100%); border-collapse: collapse; border: 1px solid black; box-shadow: 1px 2px 4px #0004; } thead, tfoot { background-color: gainsboro; border: 1px solid black; } th, td { vertical-align: top; text-align: left; padding: 5px 10px; } tbody tr:nth-child(2n) { background-color: whitesmoke; } table a:not(:hover) { text-decoration: none; color: black; } td.command a { text-decoration: underline; color: blue; } td.is_active { background-color: lemonchiffon; } /* FORUM AND MESSAGE POSTS */ div.post { background-color: white; max-width: 50em; margin-top: 24px; border: 1px solid black; box-shadow: 1px 2px 4px #0004; } div.post > div.head { display: flex; justify-content: space-between; padding: 5px 10px; background-color: gainsboro; border-bottom: 1px solid black; } div.post > div.head a { font-weight: bold; } div.post > div.head a:not(:hover) { color: black; text-decoration: none; } div.post > div.body { padding: 15px; white-space: pre-wrap; } div.post + div.edit { max-width: 50em; margin-top: 5px; text-align:right; } article hr { max-width: 50rem; margin-right: auto; margin-left: 0; } article hr { border: none; border-top: 2px dotted brown; } article hr + p { font-style: italic; } /* GAME BOXES */ .game_list { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 400px)); gap: 24px; margin: 16px 0; } .game_item { border: 1px solid black; box-shadow: 1px 2px 4px #0004; } .game_head, .game_main { display: flex; justify-content: space-between; padding: 4px 8px; } .game_head { border-bottom: 1px solid black; } .game_info { font-family: "Source Serif SmText", "Georgia", "Noto Emoji", "Dingbats", serif; font-size: 14px; line-height: 20px; } .game_item a:not(:hover) { text-decoration: none; color: black; } .game_item a.command { text-decoration: underline; font-weight: bold } .game_info .is_active { text-decoration: underline } .game_info .is_invite { opacity: 0.5 } .game_info div { text-indent: -20px; padding-left: 20px; } .game_main img { display: block; height: 72px; margin: 4px 0 4px 4px; border: 1px solid black; } .game_head { background-color: gainsboro } .game_main { background-color: whitesmoke } .game_main a:hover { color: mediumblue } .game_item.open .game_head { background-color: lightskyblue } .game_item.open .game_main { background-color: aliceblue } .game_item.open a:hover { color: royalblue } .game_item.ready .game_head { background-color: darkseagreen } .game_item.ready .game_main { background-color: mintcream } .game_item.ready a:hover { color: seagreen } .game_item.replacement .game_head { background-color: thistle } .game_item.replacement .game_main { background-color: lavenderblush } .game_item.replacement a:hover { color: purple } .game_item.active .game_head { background-color: gainsboro } .game_item.active .game_main { background-color: whitesmoke } .game_item.active a:hover { color: mediumblue } .game_item.finished .game_head { background-color: silver } .game_item.finished .game_main { background-color: gainsboro } .game_item.finished a:hover { color: mediumblue } .game_item.archived .game_head { background-color: silver } .game_item.archived .game_main { background-color: gainsboro } .game_item.archived a:hover { color: mediumblue } .game_item.your_turn .game_head { background-color: gold } .game_item.your_turn .game_main { background-color: lightyellow } .game_item.your_turn a:hover { color: #860 } .game_item.unread .game_head div::after { content: " \1f4dd "; } /* DARK MODE */ @media (prefers-color-scheme: dark) { body { background-color: silver } header { background-color: darkgray } table, div.post { background-color: gainsboro } thead, tfoot, div.post > div.head { background-color: darkgray } input, textarea { background-color: gainsboro } input:focus, textarea:focus { outline-color: cornflowerblue } }