/* ============================================================
   Estilo años 2000 - Página personal de un programador
   ============================================================ */

body {
    /* Fondo de estrellas clásico generado con gradientes */
    background-color: #000033;
    background-image:
        radial-gradient(2px 2px at 20px 30px, #ffffff, transparent),
        radial-gradient(2px 2px at 60px 120px, #ffff99, transparent),
        radial-gradient(1px 1px at 130px 70px, #ffffff, transparent),
        radial-gradient(2px 2px at 200px 150px, #99ccff, transparent),
        radial-gradient(1px 1px at 250px 40px, #ffffff, transparent),
        radial-gradient(2px 2px at 310px 100px, #ff99cc, transparent);
    background-size: 350px 200px;
    color: #ffffff;
    font-family: Verdana, Tahoma, "MS Sans Serif", sans-serif;
    font-size: 12px;
    cursor: default;
    margin: 0;
    padding: 0;
}

/* ===== BANNER ===== */
.banner {
    text-align: center;
    padding: 20px;
    background: linear-gradient(#000080, #0000ff);
    border: 3px ridge #ffcc00;
    margin: 10px auto;
    width: 760px;
}

#titulo-principal {
    font-family: "Comic Sans MS", cursive, sans-serif;
    font-size: 32px;
    font-weight: bold;
    color: #ffcc00;
    text-shadow: 3px 3px 0px #ff0066;
    letter-spacing: 2px;
}

.subtitulo {
    color: #00ffff;
    font-size: 13px;
    margin-top: 5px;
    font-style: italic;
}

/* Texto parpadeante (equivalente al viejo <blink>) */
.blink {
    animation: parpadeo 1s step-end infinite;
}

@keyframes parpadeo {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* ===== MARQUEE ===== */
.marquee-aviso {
    background-color: #ffcc00;
    color: #000033;
    font-weight: bold;
    border: 2px outset #ffffff;
    width: 760px;
    display: block;
    margin: 0 auto 10px auto;
    padding: 3px;
}

.marquee-interno {
    background-color: #330066;
    color: #00ff00;
    font-family: "Courier New", monospace;
    border: 1px dashed #ffcc00;
    padding: 2px;
}

/* ===== CONTENEDOR EN TABLA ===== */
.contenedor {
    width: 760px;
    margin: 0 auto;
    background-color: #000044;
    border: 3px outset #6666ff;
}

.menu-izquierdo, .menu-derecho {
    width: 150px;
    background-color: #000055;
    vertical-align: top;
    padding: 5px;
}

.contenido {
    width: 440px;
    background-color: #000033;
    padding: 10px;
}

/* ===== CAJAS DEL MENÚ ===== */
.caja-menu {
    border: 2px outset #6666ff;
    background-color: #000066;
    margin-bottom: 10px;
    padding: 3px;
}

.titulo-caja {
    background: linear-gradient(#0066cc, #003399);
    color: #ffcc00;
    font-weight: bold;
    text-align: center;
    padding: 3px;
    border: 1px solid #ffffff;
    margin-bottom: 4px;
    font-size: 11px;
}

.boton-menu {
    display: block;
    background: linear-gradient(#3333cc, #0000aa);
    color: #ffffff;
    text-decoration: none;
    border: 2px outset #ffffff;
    margin: 3px;
    padding: 4px 6px;
    font-size: 11px;
}

.boton-menu:hover {
    background: linear-gradient(#ff9900, #cc6600);
    color: #ffffff;
    border-style: inset;
}

.contador, .afiliados, .estado, .noticias, .frase, .encuesta, .webring {
    padding: 5px;
    font-size: 11px;
    text-align: center;
}

.contador {
    font-family: "Courier New", monospace;
    color: #00ff00;
}

.online {
    color: #00ff00;
    font-weight: bold;
}

.boton-88x31 {
    display: inline-block;
    width: 88px;
    height: 31px;
    line-height: 31px;
    background: linear-gradient(#cc00cc, #660066);
    border: 1px outset #ffffff;
    color: #ffffff;
    font-size: 9px;
    font-weight: bold;
    margin: 2px;
}

/* ===== POSTS ===== */
.post {
    border: 2px groove #6666ff;
    background-color: #000022;
    margin-bottom: 15px;
    padding: 8px;
}

.titulo-post {
    background: linear-gradient(to right, #cc0066, #330066);
    color: #ffffff;
    font-weight: bold;
    font-size: 13px;
    padding: 5px;
    border: 1px solid #ffcc00;
    text-shadow: 1px 1px 2px #000000;
}

.fecha-post {
    font-size: 10px;
    color: #9999cc;
    font-style: italic;
    margin: 4px 0;
}

.post p {
    text-align: justify;
    line-height: 1.5;
}

.firma {
    text-align: right !important;
    color: #ffcc00;
    font-style: italic;
    font-size: 11px;
}

a {
    color: #00ffff;
}

a:hover {
    color: #ffcc00;
}

/* ===== LISTAS Y TABLAS ===== */
.lista-retro li {
    margin: 6px 0;
    color: #ccccff;
}

.lista-retro li b {
    color: #ffcc00;
}

.tabla-proyectos {
    width: 100%;
    border: 2px solid #6666ff;
    background-color: #000044;
    margin: 8px 0;
}

.tabla-header {
    background: linear-gradient(#003399, #001166);
    color: #ffcc00;
}

.tabla-proyectos td {
    text-align: center;
}

/* ===== BARRAS DE HABILIDAD ===== */
.skill {
    margin: 5px 0;
    font-family: "Courier New", monospace;
}

.relleno {
    color: #00ff00;
    background-color: #000000;
    border: 1px solid #00ff00;
    padding: 1px 3px;
    white-space: nowrap;
}

/* ===== GUESTBOOK ===== */
.guestbook {
    background-color: #000044;
    border: 1px dashed #ffcc00;
    padding: 10px;
}

.guestbook input[type="text"],
.guestbook textarea {
    background-color: #000000;
    color: #00ff00;
    border: 2px inset #6666ff;
    font-family: "Courier New", monospace;
    font-size: 12px;
    margin: 3px 0;
}

.guestbook input[type="submit"] {
    background: linear-gradient(#0066cc, #003399);
    color: #ffffff;
    font-weight: bold;
    border: 2px outset #ffffff;
    padding: 4px 10px;
    cursor: pointer;
}

.guestbook input[type="reset"] {
    background-color: #660000;
    color: #ffffff;
    border: 2px outset #ffffff;
    padding: 4px 10px;
    cursor: pointer;
}

/* ===== FOOTER ===== */
.footer {
    width: 760px;
    margin: 10px auto;
    text-align: center;
    background-color: #000055;
    border: 2px ridge #ffcc00;
    padding: 10px;
    font-size: 10px;
    color: #9999cc;
}

.footer p {
    margin: 5px 0;
}