body {
    background-color: #000000;
    color: #ffffff;
    font-family: "MS PGothic", sans-serif;
}

header {
    text-align: center;
    padding: 20px;
    border-bottom: 2px dashed #00ff00;
}

h1 {
    color: #ffff00;
    font-size: 36px;
    text-shadow: 2px 2px #ff0000;
}

main {
    padding: 20px;
}

marquee {
    color: #ff00ff;
    font-size: 20px;
    font-weight: bold;
}

h2 {
    color: #00ffff;
    border-bottom: 1px solid #00ffff;
}

footer {
    text-align: center;
    padding: 10px;
    margin-top: 30px;
    border-top: 2px dashed #00ff00;
}

@keyframes rainbow-border {
    0% { border-color: red; box-shadow: 0 0 10px red; }
    16% { border-color: orange; box-shadow: 0 0 10px orange; }
    33% { border-color: yellow; box-shadow: 0 0 10px yellow; }
    50% { border-color: green; box-shadow: 0 0 10px green; }
    66% { border-color: blue; box-shadow: 0 0 10px blue; }
    83% { border-color: indigo; box-shadow: 0 0 10px indigo; }
    100% { border-color: violet; box-shadow: 0 0 10px violet; }
}

.counter {
    text-align: center;
    margin: 30px auto;
    padding: 20px;
    border: 5px solid;
    border-radius: 15px;
    background: #111;
    font-size: 1.5em;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 15px #00ffff, 0 0 20px #00ffff;
    animation: rainbow-border 3s linear infinite alternate;
    width: 80%;
    max-width: 500px;
}

.bbs-link, .diary-link {
    text-align: center;
}

.bbs-link {
    margin-top: 20px;
}

.diary-link {
    margin-top: 10px;
}

.bbs-link a, .diary-link a {
    display: inline-block;
    padding: 15px 30px;
    margin: 10px;
    border: 2px solid #ffff00;
    border-radius: 10px;
    background: linear-gradient(45deg, #ff00ff, #00ffff);
    color: #ffffff;
    text-decoration: none;
    font-size: 1.2em;
    font-weight: bold;
    text-shadow: 0 0 5px #ffffff, 0 0 10px #ffffff;
    box-shadow: 0 0 10px #ffff00, 0 0 20px #ff00ff, inset 0 0 5px #ffffff;
    transition: all 0.3s ease-in-out;
    position: relative;
    overflow: hidden;
}

.bbs-link a:before, .diary-link a:before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0) 60%);
    transform: rotate(45deg);
    animation: sparkle 5s linear infinite;
}

@keyframes sparkle {
    0% {
        transform: scale(0) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: scale(1.5) rotate(180deg);
        opacity: 1;
    }
    100% {
        transform: scale(0) rotate(360deg);
        opacity: 0.5;
    }
}


.bbs-link a:hover, .diary-link a:hover {
    transform: scale(1.1);
    box-shadow: 0 0 20px #ffff00, 0 0 40px #ff00ff, inset 0 0 10px #ffffff;
    color: #000;
    background: linear-gradient(45deg, #ffff00, #00ff00);
    text-decoration: none;
}