/* ===== STYLE ANNÉES 2000 - vdepontac MINIGAMES ===== */
/* Copie autonome pour sous-domaine - tout chargé en local */

/* Animation blink (remplace <blink> déprécié) */
@keyframes blink {
    0%, 50% { opacity: 1; }
    51%, 100% { opacity: 0.3; }
}
.blink {
    animation: blink 1.5s step-end infinite;
}

/* Curseur - défaut (pas d'assets externes) */
body, html { cursor: default; }
a, button, .btn, input[type="submit"], input[type="button"] { cursor: pointer; }
.Loading, .disabled, [disabled] { cursor: wait; }
.noselect { cursor: not-allowed; }

/* Fond avec motif répété années 2000 + starfield subtil */
@keyframes twinkle {
    0%, 100% { opacity: 0.3; }
    50% { opacity: 0.8; }
}

body {
    color: #000000;
    font-family: "Comic Sans MS", "Arial", sans-serif;
    font-size: 12px;
    background: #c0c0c0 url("data:image/svg+xml,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h20v20H0z' fill='%23d0d0d0'/%3E%3Cpath d='M0 0h1v20H0z' fill='%23e0e0e0'/%3E%3Cpath d='M0 0h20v1H0z' fill='%23e0e0e0'/%3E%3C/svg%3E") repeat;
    padding: 8px;
    margin: 0;
    line-height: 1.5;
    position: relative;
}

body::before {
    content: "";
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    pointer-events: none;
    z-index: 0;
    background-image:
        radial-gradient(2px 2px at 5% 15%, rgba(255,255,255,0.7), transparent),
        radial-gradient(2px 2px at 25% 35%, rgba(255,200,255,0.5), transparent),
        radial-gradient(2px 2px at 45% 55%, rgba(200,255,255,0.6), transparent),
        radial-gradient(2px 2px at 65% 25%, rgba(255,255,200,0.5), transparent),
        radial-gradient(2px 2px at 85% 75%, rgba(255,255,255,0.6), transparent),
        radial-gradient(2px 2px at 15% 85%, rgba(255,255,255,0.4), transparent),
        radial-gradient(2px 2px at 95% 45%, rgba(255,200,255,0.5), transparent);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    animation: twinkle 3s ease-in-out infinite;
}

.vgui-font {
    color: #000000;
    font-family: "Comic Sans MS", "Arial", sans-serif;
    font-size: 12px;
}

#wrapper {
    width: 800px;
    margin: 0 auto;
    background: linear-gradient(180deg, #e8e8e8 0%, #c0c0c0 100%);
    min-height: 100vh;
    border: 3px solid #ffffff;
    box-shadow: 3px 3px 6px rgba(0,0,0,0.3), inset 1px 1px 0 #ffffff;
    position: relative;
    z-index: 1;
}

#header {
    background: linear-gradient(180deg, #4169e1 0%, #1e90ff 50%, #0000cd 100%);
    border-bottom: 2px solid #000080;
    padding: 12px;
}

.topbar-logo { display: flex; align-items: center; }

.topbar h1, .topbar-logo a:not(.btn-home-big), .site-title {
    color: #ffffff !important;
    text-shadow: 2px 2px 2px #000000;
    font-family: "Impact", "Arial Black", sans-serif !important;
    font-size: 16px;
    margin: 0;
}

#bmenum {
    background: linear-gradient(180deg, #4a4a4a 0%, #2a2a2a 100%);
    border-top: 2px outset #808080;
    border-bottom: 2px inset #404040;
    padding: 6px 12px;
}

#main_menu a { color: #00ffff !important; text-decoration: underline; }
#main_menu a:hover, #main_menu a.active { color: #ff69b4 !important; background: #333333 !important; }
#main_menu ul ul { background: #2a2a2a; border: 2px outset #808080; }

a { color: #0000ff; text-decoration: underline; }
a:visited { color: #800080; }
a:hover { color: #ff0000; }

input[type=button]:not(:active), .btn {
    border-top: 2px solid #ffffff;
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #404040;
    border-right: 2px solid #404040;
    color: #000000;
    background: linear-gradient(180deg, #c0c0c0 0%, #a0a0a0 100%);
    padding: 6px 12px;
    font-size: 12px;
    font-family: "Arial", sans-serif;
}

input[type=button]:active, .btn:hover {
    border-top: 2px solid #404040;
    border-left: 2px solid #404040;
    border-bottom: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    background: linear-gradient(180deg, #a0a0a0 0%, #c0c0c0 100%);
}

.frame {
    background: #ffffff;
    border: 2px inset #808080;
    padding: 12px;
    margin: 8px;
}

.hero {
    background: linear-gradient(135deg, #4169e1 0%, #9370db 100%);
    border: 2px outset #a0a0a0;
    padding: 20px;
    margin: 12px 0;
    text-align: center;
}

.hero-title {
    color: #ffffff !important;
    font-family: "Impact", "Arial Black", sans-serif !important;
    font-size: 24px !important;
    text-shadow: 3px 3px 3px #000000;
}

.title-highlight { color: #ffff00 !important; text-shadow: 2px 2px 2px #000000; }
.hero-subtitle { color: #ffff00 !important; font-size: 14px !important; }
.hero-description { color: #ffffff !important; font-size: 12px !important; }

.project-card {
    background: #f0f0f0;
    border: 2px outset #a0a0a0;
    padding: 12px;
    margin-bottom: 10px;
}

.project-card:hover { background: #e8e8ff; border: 2px inset #808080; }
.project-header h3 { color: #0000ff !important; font-family: "Arial", sans-serif !important; }
.project-content p { color: #000000 !important; }
.project-meta { color: #333333 !important; }
.project-meta a { color: #0000ff !important; }
.project-meta a:visited { color: #800080 !important; }

.section-title {
    color: #0000ff !important;
    font-family: "Impact", "Arial Black", sans-serif !important;
    text-shadow: 1px 1px 1px #c0c0c0;
}

.section-divider {
    height: 4px;
    border: none;
    margin: 24px 0;
    background: repeating-linear-gradient(90deg, #ff69b4 0px, #00ffff 4px, #ffff00 8px, #00ff00 12px, #ff69b4 16px);
    background-size: 20px 4px;
    animation: divider-move 2s linear infinite;
}

@keyframes divider-move {
    0% { background-position: 0 0; }
    100% { background-position: 20px 0; }
}

.hero a { color: #ffff00 !important; }
.hero a:hover { color: #ffffff !important; }

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
}

.hero-actions .btn {
    background: linear-gradient(180deg, #ffffff 0%, #e8e8e8 100%) !important;
    color: #1a1a1a !important;
    border: 2px solid #2c3e50 !important;
    padding: 10px 20px !important;
    font-size: 13px !important;
    font-weight: bold !important;
}

.hero-actions .btn:hover {
    background: linear-gradient(180deg, #ffff00 0%, #ffcc00 100%) !important;
    color: #000000 !important;
}

.frame a { color: #0000ff !important; }
.frame a:visited { color: #800080 !important; }

.footer {
    background: linear-gradient(180deg, #4a4a4a 0%, #2a2a2a 100%);
    border-top: 2px outset #808080;
    color: #ffffff !important;
}

.footer-text, .footer-copyright, .footer-text a, .footer-copyright a { color: #00ffff !important; }
.footer-brand-name { color: #ffffff !important; font-weight: bold; font-size: 12px; }
.footer-brand-tagline { color: #c0c0c0 !important; font-size: 9px; }

.marquee-band {
    background: linear-gradient(90deg, #ff1493, #00ffff, #ffff00, #ff69b4, #00ff00);
    color: #000000;
    padding: 6px 0;
    font-weight: bold;
    border-top: 2px solid #ffffff;
    border-bottom: 2px solid #000000;
}

.btn-home-big {
    position: relative;
    z-index: 999;
    padding: 6px 14px !important;
    font-size: 12px !important;
    text-decoration: none !important;
    margin-left: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #e0e0e0 100%) !important;
    color: #0000ff !important;
    border: 2px outset #808080 !important;
}

.btn-home-big:hover { color: #ff0000 !important; }

.hidden { display: none !important; }

@media (max-width: 820px) {
    #wrapper { width: 95%; }
}
