@charset "utf-8";
* { box-sizing: border-box; }
body { margin: 0; padding: 0; font-family: 'Segoe UI', Arial, sans-serif; background-color: #f7f3ed; display: flex; justify-content: center; }

/* Fondo de bloques limpio y traslúcido */
.main-wrapper { 
    width: 100%; 
    max-width: 1100px; 
    background-image: radial-gradient(#e0ddd5 20%, transparent 20%);
    background-size: 40px 40px;
    background-color: white; 
    margin: 0 auto; 
    box-shadow: 0 0 15px rgba(0,0,0,0.1); 
}

header { background: #b03a2e; color: white; padding: 25px 15px; text-align: center; }
header h1 { margin: 0; font-size: 1.5em; text-transform: uppercase; }

/* Ajuste para que los días no se confundan con el fondo */
.day-section h2 { 
    background-color: #2c3e50; 
    color: white; 
    padding: 10px 20px; 
    display: inline-block; 
    border-radius: 4px; 
    font-size: 1.2em;
    margin-bottom: 20px;
}

nav { position: sticky; top: 0; z-index: 1000; display: flex; background: #2c3e50; }
nav a { flex: 1; color: white; text-decoration: none; text-align: center; padding: 12px 5px; font-weight: bold; font-size: 13px; }

.day-section { padding: 25px; border-bottom: 20px solid #f0f2f5; }
.salon-container { margin-top: 20px; background: rgba(255, 255, 255, 0.95); border: 1px solid #ddd; border-radius: 8px; padding: 15px; }
.salon-title { font-size: 1.1em; color: #2c3e50; border-bottom: 2px solid #eee; padding-bottom: 8px; margin-bottom: 15px; font-weight: bold; }

.acceso-texto { display: block; font-size: 0.75em; color: #7f8c8d; font-weight: normal; margin-top: 2px; }
.leyenda-roja { display: block; color: #c0392b; margin-top: 5px; font-size: 0.9em; font-weight: bold; }

.item-list { display: flex; flex-wrap: wrap; margin-bottom: 15px; padding-bottom: 10px; border-bottom: 1px solid #f0f0f0; }
.time-col { flex: 0 0 110px; font-weight: bold; color: #b03a2e; font-size: 0.9em; }
.content-col { flex: 1; }
.title-txt { font-weight: 700; color: #212f3c; font-size: 1.05em; display: block; margin-bottom: 4px; }
.speaker-txt { color: #566573; font-size: 0.9em; display: block; }

/* Footer más compacto */
footer { text-align: center; padding: 15px; background: #2c3e50; color: #bdc3c7; font-size: 0.8em; line-height: 1.4; }

.highlight-bar { background: #f1c40f; padding: 12px; text-align: center; font-weight: bold; border-radius: 5px; margin: 15px 0; font-size: 0.95em; }