.mini-calendar { background: white; border-radius: 8px; padding: 15px; box-shadow: 0 2px 8px rgba(0,0,0,0.08); max-width: none; width: 100%; } .mini-calendar-table { width: 100%; border-collapse: separate; border-spacing: 2px; font-size: 0.85rem; } .mini-calendar-table th { padding: 8px 4px; color: #6C757D; font-weight: 500; text-transform: uppercase; font-size: 0.75rem; } .mini-calendar-table td { width: 32px; height: 32px; text-align: center; border-radius: 6px; font-size: 0.85rem; position: relative; cursor: default; padding: 6px; color: #495057; transition: all 0.2s ease; } .has-test { color: #89CC9B !important; font-weight: bold !important; background-color: rgba(137, 204, 155, 0.2) !important; } .has-test:hover { background-color: #78B889 !important; color: white !important; } .day-tests-popup { display: none; position: absolute; top: 50%; left: 100%; transform: translate(8px, -50%); background-color: white; border: 1px solid #E9ECEF; border-radius: 6px; padding: 4px; z-index: 9999; min-width: 70px; box-shadow: 0 4px 12px rgba(0,0,0,0.15); } /* Creamos un área segura entre el día y el popup */ .mini-calendar-table td .safe-area { position: absolute; width: 16px; height: 100%; top: 0; left: 100%; z-index: 999; } .period-selector { background: white; border-radius: 8px; padding: 15px; box-shadow: 0 2px 8px rgba(0,0,0,0.08); } .test-selector { background: #F8F9FA; border-radius: 6px; padding: 15px; margin-top: 15px; } .test-selector label { color: #495057; margin-bottom: 6px; font-size: 0.85rem; font-weight: 500; }