/* 2023-08-23 */

:root {
    --BACK_COLOR: #e6e6e6;
    --DISPLAY_WIDTH: 90%;
    --MAX_DISPLAY_WIDTH: 720px;
    --BLOCK_RADIUS: 4px;
    --TOPICBLOCK_BACK_COLOR: #fefefe;
    --TOPICBLOCK_BORDER_COLOR: #f2f2f2;
}

* {
    box-sizing: border-box;
    font-family: sans-serif;
}

body {
    background-color: var(--BACK_COLOR);
}

h1, h2, h3, h4, h5, h6 {
    margin: 8px 0;
}

h2, h3, h4, h5, h6 {
    padding-left: 6px;
    border-left: solid 4px #000;
}

header {
    width: 90%;
    max-width: var(--MAX_DISPLAY_WIDTH);
    margin: 32px auto;
}

#main {
    width: 90%;
    max-width: var(--MAX_DISPLAY_WIDTH);
    margin: 32px auto;
}

#main b {
    display: block;
    margin: 8px 0;
    font-weight: normal;
}

#main b span {
    display: inline-block;
    background-color: #000;
    color: #fff;
    padding: 4px 8px;
    border-radius: var(--BLOCK_RADIUS);
}

/* Topic Block */
#main div {
    z-index: -1;
    background-color: var(--TOPICBLOCK_BACK_COLOR);
    min-height: 240px;
    margin: 32px 0;
    padding: 16px;
    border: solid 1.6px var(--TOPICBLOCK_BORDER_COLOR);
    border-radius: var(--BLOCK_RADIUS);
}

a, a:link, a:visited {
    color: #000;
    text-decoration: underline;
}

b span a, b span a:link, b span a:visited {
    color: #fff;
    text-decoration: underline;
}

a.link_block {
    --LINK_BLOCK_WIDTH: 8px;

    position: relative;
    display: block;
    /*
    background-color: var(--BACK_COLOR);
    width: calc(100% - var(--LINK_BLOCK_WIDTH));
    height: calc(100% - var(--LINK_BLOCK_WIDTH));
    */
    margin: 8px auto;
    padding: 8px;
    border: solid 2px #000;
    border-radius: 4px;
    /*border-radius: calc(var(--BLOCK_RADIUS) / 2);*/
    text-align: center;
    text-decoration: underline;
    font-size: 18px;
    font-weight: bold;
}
/*
a.link_block::after {
    z-index: -1;
    content: "";
    position: absolute;
    top: calc((var(--LINK_BLOCK_WIDTH) / 2) * -1);
    left: calc((var(--LINK_BLOCK_WIDTH) / 2) * -1);
    background-color: #000;
    width: calc(100% + var(--LINK_BLOCK_WIDTH));
    height: calc(100% + var(--LINK_BLOCK_WIDTH));
    border-radius: var(--BLOCK_RADIUS);
}
*/

p {
    font-size: 18px;
    margin: 0 0 32px 0;
}

footer {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 16px 0;
}